【问题标题】:Unity configuration problemunity配置问题
【发布时间】:2010-03-01 17:33:26
【问题描述】:

当我尝试运行我的 ioc 类时,我目前无法加载 ExternalIdentityProvider

container = new UnityContainer();
UnityConfigurationSection unitySection = ConfigurationManager.GetSection(unitySectionName) as UnityConfigurationSection;
unitySection.Containers.Default.Configure(container);

无法从程序集“Microsoft.Practices.Unity.Configuration, Version=1.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”加载类型“ExternalIdentityProvider”。

这是我的统一配置:

  <!-- User-defined type aliases -->

  <!--Repositories interfaces-->
  <typeAlias alias="ICrudeVideoRepository"
           type="DalCore.Repository.ICrudeVideoRepository, DalCore" />

  <!--Repositories Classes-->
  <typeAlias alias="CrudeVideoSqlRepository"
             type="SqlServerDAL.Repository.CrudeVideoSqlRepository, SqlServerDAL" />

</typeAliases>

<containers>
  <container>
    <types>

      <!--Repositories Maps-->
      <type type="ICrudeVideoRepository" mapTo="CrudeVideoSqlRepository" />
        </typeConfig>
      </type>
    </types>
  </container>
</containers>

【问题讨论】:

  • CrudeVideoSqlRepository 的构造函数是什么样的?

标签: .net unity-container


【解决方案1】:

你如何验证人的身份?

看上面的代码,Unity 很不爽,因为它找不到“ExternalIdentityProvider”。这与您自己的 DAL 类无关。

我猜我会说您正在尝试使用外部身份机制(Yahoo、Google、Facebook 等)来验证用户身份,我怀疑它是直接在 Unity 配置中引用的。当您加载配置文件时,Unity 会尝试解析您的配置文件中的每个类,因此如果您的 bin 中没有该文件或在项目中没有引用该文件,那么您将收到 Unity 错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多