0
我正在WebAPI
中工作。我有以下兩種方法將數據發送到相應的客戶端。如何共享管理員角色和匿名角色的授權方法
的方法的簽名是
[HttpPost]
[Authorize]
public string GetMessage()
{
return "I'm a Member of StackOverflow";
}
[HttpPost]
[Authorize(Roles = "Admin")]
public string GetAdminMessage()
{
return "I'm a Member of StackOverflow since 2010";
}
請協助我怎麼會這兩種方法在一個單一的方法,基於角色應該返回數據。
預期的骨骼結構應該是
[HttpPost]
[Authorize ???]
public string GetMessage()
{
return "I'm a Member of StackOverflow" + (Roles == Admin) ? "since 2010" : String.Empty;
}
爲什麼不使用'if(this.User.IsInRole(「Admin」)){...} else {...}'? – haim770
@ haim770 - 我需要賦予'[Authorize ???]'什麼是Authorize屬性的結構' –
只需應用沒有參數的[Authorize]'。它將確保只有授權用戶才能訪問該操作(不管他們的角色如何)。然後你必須使用'if ...' – haim770