从MVC3中的User.Identity.Name中删除域

use*_*410 4 windows-authentication asp.net-mvc-3

我正在MVC3 @Razor中构建一个Intranet站点.它正在使用Windows身份验证.我遇到的问题是UserID列出了数据库中的所有用户.从Windows上下文获取用户信息的默认操作包括域(例如domain\userid).是否可以将此更改为仅获取用户标识并忽略域,而无需编写自定义身份验证过程?含义User.Identity.Name只是userid而不是domain和userid.

编辑:这是基于使用默认成员资格的成员资格模型.

编辑:问题与信息的显示无关.问题是当系统从Windows获取用户信息然后去获取成员资格信息时,域名是否可以被删除,因此只传递用户ID而不是域和用户ID.我想要的是能够将userid传递给成员资格而不是"domain\userid".

For*_* L. 14

下列:

User.Identity.Name.Split('\\')[1]; 
Run Code Online (Sandbox Code Playgroud)

将删除域部分.

  • 你的行应该是User.Identity.Name.Split('\\')[1]; as \是一个转义字符. (2认同)