[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();
// ...
}
}
Ci sono alcune opzioni disponibili ma nessuna sembra essere particolarmente progettata per casi come questo.C# quale eccezione dovrei aumentare qui?
cioè:
- UnauthorizedAccessException: I/O
- AccessViolationException: Memoria roba
- SecurityAccessDeniedException: Rappresenta l'eccezione di protezione che viene generata quando una richiesta di autorizzazione di sicurezza fallisce.
ecc
Devo creare il mio tipo di eccezione per questo? Quale eccezione dovrebbe essere sollevata quando gli utenti non hanno abbastanza privilegi per invocare un metodo?