string Authenticate(string username, string password);
提供一个简单的身份验证方法,该方法接收用户名和密码并在成功时返回令牌,我需要能够应对各种失败情况,包括 - 无效凭证,锁定帐户,等待验证等。
最好的方法是什么?
我正在考虑以下两个选项中的任何一个,但对其他任何事情都持开放态度:
(1)使用枚举和令牌更改对对象的响应。但是对于使用这种方法进行版本控制有点担心。
(2)每个故障情况都有故障。虽然不确定这里的表现。
答案 0 :(得分:0)
只有在希望在客户端返回更多详细信息/管理异常时,才应使用FaultContract。一个例外(正如你对名称本身所猜测的那样)是你无法预见的东西,或者是违背你意愿的东西:-) 在您的情况下,您已经知道登录可以被锁定,无效等。我认为您应该返回一个枚举器(或将其封装到一个对象中)以提供更多信息而不是引发异常以强制使用错误契约 我希望这是有道理的