这很奇怪。在完成了对.NET中基于声明的解决方案的一些研究后,我发现不同的作者在实际谈论同一问题时,在.NET命名空间中引用了不同的类。Claim类(更不用说周围的其他Identity、Principal、Manager、Helper类)定义在3个不同的命名空间中。
很明显,WIF是.NET 3.5和4.0的单独的附加组件,它在4.5中被重写并成为核心的一部分。然而,对于新项目使用哪个类有明确的指导是很有帮助的(这样移植到4.5以后会更容易)。还有没有人有更多关于这个主题的信息?
第一个链接:http://msdn.microsoft.com/en-us/library/ms572956(v=vs.110) (System.IdentityModel.Claims命名空间)
第二名:http://msdn.microsoft.com/en-us/library/microsoft.identitymodel.claims.claim.aspx (Microsoft.IdentityModel.Claims)
第三名:(System.Security.Claims.Claim)
发布于 2012-08-01 04:24:35
System.IdentityModel.Claims
是WCF/.NET3.0的一部分
Microsoft.IdentityModel.Claims
扩展了System.IdentityModel.Claims
,是Windows Identity Foundation类。
System.Security.Claims
是.Net 4.5版本。
因此,如果你使用WIF
编写,你应该使用Microsoft.IdentityModel.Claims
。
https://stackoverflow.com/questions/11713339
复制相似问题