使用实体框架从数据库中查询时,应该捕获哪些异常以及应该如何处理它们?
通常我使用它catch(Exception)
是因为我对每种可能的错误类型都没有具体的行动或反馈,但我经常被提醒这是一个糟糕的想法,应该捕获和处理特定的异常!例子:
try
{
using(MyEntities context = new MyEntities())
{
context.Companies.Attach(company);
ActiveEmployees = company.Employees.Where(x => x.IsActive).ToList();
}
}
catch(Exception ex)
{
Feedback(FeedbackType.ApplicationError); // User feedback
Logger.Log(ex); // Log the exception
}
处理 EF 异常的标准/指南是什么?