我遇到了使用 Microsoft.IdentityModel 命名空间中的类/接口的 ASP.NET MVC Razor wiews 的问题,在设计和运行时模式下都抱怨如下:
“命名空间‘Microsoft’中不存在类型或命名空间名称‘IdentityModel’(您是否缺少程序集引用?)”
与 HttpCompileException 似乎也出现在运行时。
如果从同一项目的控制器或视图模型中引用,上述不是问题。
下面给出了代码示例(下面代码中的IdentityModel第2行在设计中用红色下划线):
@using System.Security.Principal;
@using Microsoft.IdentityModel.Claims;
@model IPrincipal
@{
ViewBag.Title = "Claims";
Layout = null;
}
@if (Model is IClaimsPrincipal)
{
IClaimsIdentity identity = Model.Identity as IClaimsIdentity;
...
上下文如下
- asp.net 4.0 MVC Web 应用程序
- VS2010
- WIF 3.5
我将 Microsoft.IdentityModel.dll 程序集(预先安装了 WIF SDK)添加到我的 asp.net mvc 4 web 项目中。
谢谢