asp.net - 如何在 Razor 中使用 System.DirectoryServices.AccountManagement?
问题描述
我System.DirectoryServices.AccountManagement
从 NuGet 安装,我可以在我的控制器中使用它。我正在尝试@UserPrincipal.Current.EmailAddress
在 Razor 视图中使用。我将命名空间添加到Views/Web.config
:
<system.web.webPages.razor>
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.DirectoryServices.AccountManagement"/>
</namespaces>
</pages>
</system.web.webPages.razor>
这给我留下了一个错误,所以我还添加了程序集参考:
<system.web>
<compilation>
<assemblies>
<add assembly="System.DirectoryServices.AccountManagement, Version=4.5.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</assemblies>
</compilation>
</system.web>
我从sn -T
. 但我仍然收到此错误:
无法加载文件或程序集“System.DirectoryServices.AccountManagement,Version=4.5.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”或其依赖项之一。该系统找不到指定的文件。
我做错了什么,或者我还需要做什么?
解决方案
仍然不知道为什么我不能直接引用System.DirectoryServices.AccountManagement
. 但是间接使用它们可以按预期工作:
public static class UserHelper
{
public static string GetEmail()
{
return UserPrincipal.Current.EmailAddress;
}
}
我恢复了我之前的更改Views/Web.config
并添加了这个类所在的命名空间。现在我可以@UserHelper.GetEmail()
在 Razor 中使用了。
推荐阅读
- jquery - 需要修改这个脚本来关闭其他不活跃的元素
- zurb-foundation - 带有输入元素的 Foundation 6 下拉菜单
- ios - 如何使用 ARKit 添加相对于跟踪图像位置的节点?
- java - 以纯文本形式获取 XML
- php - 在 symfony 中找不到 404 路由异常处理
- css - 当父母具有特定的不透明度时计算孩子的不透明度
- api - 我可以使用 API 将跟踪编号自动发布到订单吗?
- javascript - 当使用 new 和作为常规函数调用时,javascript 构造函数中“this”的值
- javascript - 如果之前使用过该操作,我如何让 Dialogflow 代理向用户致意?
- python-3.x - 无法将 postgresql 与 odoo 连接