目前我正在检查:
@if(this.User.Identity.Name=="DOMAIN\\USERID"){
这很好用,但我希望有多个用户(2-3)来检查。我也不想硬编码。有没有办法在 web.config 或数据库中执行此操作?
目前我正在检查:
@if(this.User.Identity.Name=="DOMAIN\\USERID"){
这很好用,但我希望有多个用户(2-3)来检查。我也不想硬编码。有没有办法在 web.config 或数据库中执行此操作?
您可以在配置中添加一个列表...User1,User2
等然后使用linq
和.Any()
反对这个列表?
var users = "user1,user2,user3".Split(','); //list will come from your config
bool result = users.Any(u => u == this.User.Identity.Name);
此外,由于您使用的是 MVC,如果您想使用authorization
forcontrollers
等,您可以使用[Authorize]属性。也见这个 SO 链接Authorize attribute in ASP.NET MVC
也许使用角色,然后将相关用户添加到该角色?这将使将来更容易扩展,而且您不必对用户列表进行硬编码。