我在Unity中遇到配置错误.
我正在尝试实现
http://unitymvc3.codeplex.com/,但我现在被卡住了,因为这样:
在我的统一配置中,我有这样的设置:
<register type="IMainDbContext" mapTo="WorkflowContext">
<lifetime type="hierarchical" />
<constructor></constructor>
</register>
但在创建统一时,(我的简单代码在这里:)
UnityConfigurationSection section = ConfigurationManager.GetSection("unity") as UnityConfigurationSection;
if (section != null)
{
section.Configure(container);
}
this.container = container;
一切都配置得很好,除了注册“IManDbContext”,它有LifetimeManagerType = {Name =“TransientLifetimeManager”FullName =“Microsoft.Practices.Unity.TransientLifetimeManager”},但它应该是分层终身经理
您是否有任何想法如何告诉团结(在配置中,而不是在代码中)我想要分层终身经理?
谢谢你的任何提示.
最佳答案 我的错误是由此错误引起的:
我有多个DbContext,但它们配置错误:
<register type="IMainDbContext" mapTo="WorkflowContext">
<lifetime type="hierarchical" />
<constructor></constructor>
</register>
<register type="IReportDbContext" mapTo="SomeBadContext">
<lifetime type="hierarchical" />
<constructor></constructor>
</register>
当我使用这个配置时,这很糟糕,统一简单不要配置任何终身经理.在我将这些上下文设置为正确之后,unity使用了我的生命周期管理器配置.