【发布时间】:2018-10-17 09:05:22
【问题描述】:
我有一个打印生成的 ZPL 的函数。如果 PrintAsync 函数的返回值为 null,我的调用函数创建 Request.CreateResponse<string>(ZPL) 并返回 ZPL,否则返回消息 Request.CreateErrorResponse(HttpStatusCode.SeeOther, printerMessage);
public async Task<Exception> PrintAsync(string zString)
{
try
{
await print(zString);
}
catch (Exception pe)
{
// assign pe to prop
}
return prop;
}
这很有效,而且在建立与打印机的连接时,我可以很容易地知道何时出现问题。这是一种可接受的错误通知方式吗?
【问题讨论】:
-
这真的很不标准。为什么不采用标准方法,让异常被抛出,即删除 PrintAsync 中的 try/catch 并在必要时在调用者中捕获它?
-
@ckuri 这个函数有很多调用者,我认为这可能是一种更简单的方法,而不是处理控制器上的每个调用。
标签: c# async-await asp.net-web-api2 task-parallel-library