当我尝试运行我的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>
答案 0 :(得分:0)
您如何验证人员?
看看上面的代码,Unity很难过,因为它无法找到“ExternalIdentityProvider”。这与您自己的DAL类无关。
猜测我会说你正在尝试使用外部身份机制(雅虎,谷歌,Facebook等)验证用户身份,我怀疑它是直接在Unity配置中引用的。 Unity会在您加载配置文件时尝试解析您的配置文件中的每个类,因此如果您的bin中没有该文件或在项目中引用该文件,那么您将收到Unity错误。