验证方法是否有通用的最佳做法?

时间:2018-06-21 12:31:55

标签: c# architecture

当我想到一个问题时,我正在创建一个通用接口来验证数据提供者的可操作性。

基本上,我正在查看的方法具有Task<bool> TryConnectAsync();之类的签名

虽然该方法清楚地表明了提供者是否可以工作,但它没有提供通用的方式指出如果不能工作(假)该怎么做。

例如,以AspNetCore.Identity包为例,通过使用返回类型IdentityResult来解决任何可能成功/失败的方法,可以解决此问题,此外还提供了有关如何解决问题或指出问题的附加信息。出了错。

在这种情况下,我不想使用异常,因为连接失败不是完全意外的情况,因为该方法为true,否则将使该方法处理异常,或者引发异常以提供有关什么内容的详细信息出了错。

我也不想仅将这些信息转储到日志中-我希望图书馆使用者能够决定是否显示该信息。

所以我的问题是:

是一个信息类,提供成功或失败的信息,如AspNetCore.Identity是标准做法,还是有其他其他处理方式?

对于Google:如何处理方法的成功或失败并提供其他信息。

不确定问题是否在这里。可能更适合SE。

0 个答案:

没有答案