[WebService(Namespace = "http://service.site.com/service/news")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
[ScriptService]
public class NewsService : System.Web.Services.WebService
{
[WebMethod]
[ScriptMethod]
public void DoPost(string title, string markdown, int categoryId)
{
if (!MembershipHelper.IsAtLeast(RoleName.Administrator))
throw new AuthenticationException();
// ...
}
}
有很多選擇可用,但沒有一個似乎是特別爲這種情況設計的。C#我應該在這裏舉個例外嗎?
即:
- UnauthorizedAccessException:I/O
- AccessViolationException:記憶的東西
- SecurityAccessDeniedException:代表當安全授權請求失敗時引發安全異常。
等
我應該創建自己的異常類型的呢?成員用戶沒有足夠的權限來調用某個方法時應該提出什麼例外?