我正在使用C#上的user32.dll构建一个类来自动化外部程序。
我要指出的是,当我在TextBox
上插入并提交文本(其ID代码)时,可以以MessageBox
的形式抛出并处理一些异常,直到此处,一切都很好。
这种异常可以像“打印机缺纸”,“无效代码”等...
如果我有一种方法GetErrorBox
,则根据最佳实践,该方法应该返回什么?
public static bool GetErrorBox()
{
// Test if ErrorBox Out Of Papper Exists
if (CrossApplicationHandler.WindowExists("#####", "#######"))
return ?;
// Test if ErrorBox Invalid Code Exists
else if (CrossApplicationHandler.WindowExists("#####", "#####"))
return ?;
else return ?;
}
编辑
我可以返回不同的strings
并在调用方上对其进行处理,抛出不同的exceptions
,但我相信,这样做更清楚,最好的方法是像用户一样返回Enum
@Mabakay哭了。
谢谢大家,如果我在表达这个问题上遇到困难时表示抱歉。
这是解决方案:
public enum ErrorBox
{
None = 0,
OutOfPapper,
InvalidCode,
...
}
public static ErrorBox GetErrorBox()
{
...
}
答案 0 :(得分:1)
基于具有前缀Has / Was / Is ...的 The Best Practices 方法,应返回bool。在您的情况下,您可以使用enum返回错误框的实际状态。
public enum ErrorBox
{
None = 0,
OutOfPapper,
InvalidCode,
...
}
public static ErrorBox GetErrorBox()
{
...
}