Unity配置问题

时间:2010-03-01 17:33:26

标签: .net unity-container

当我尝试运行我的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>

1 个答案:

答案 0 :(得分:0)

您如何验证人员?

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

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