3

我想为 C# 中的数据库查询获取当前登录的用户名,并尝试查找 ASP“命令” User.Identity.Name的 C# 版本。当我搜索它时,我只发现使用Environment.Username和类似解决方案获取 Windows 用户名的人 - 这不是我需要的。

所以,我说的是由 VS 中的 ASP 配置对话框创建的帐户,或自动生成的注册功能。我可以注册/登录/注销和一切,所以我猜有某种会话存储我需要的信息。我只是不知道在哪里可以找到它。

我希望我不会那么困惑 :) 有人知道如何从 C# 模型中获取我的会话信息吗?

4

2 回答 2

2

您可以像在经典 ASP 中一样在 MVC 中获取当前用户的名称,使用User.Identity.Name. 整个命名空间是System.Web.HttpContext.Current.User.Identity.Name.

如果没有看到您的代码,我无法确定,但我想您不包括System.Web,即使您是,您也可能需要指定HttpContext.Current.User.Identity.Name.

于 2012-10-19T13:56:33.230 回答
1

您可以将控制器属性“用户”传递给您的模型。像这样的东西:

public ActionResult Index()
{
    IndexModel model = new IndexModel(this.User);
}
于 2012-10-19T13:40:50.123 回答