如何在DataBase中通过错误通知应用程序(例如StoredProcedure,view etc等)

时间:2010-11-14 07:01:04

标签: .net sql-server database

我在采访中问一个问题,我们正在开发一个调用StoredPeocedure的WPF应用程序。如果在执行期间StoredProcedure中存在错误或数据库中发生任何错误,我们现在如何在应用程序中向客户端正常显示此信息。

表示错误在服务器上的SQl中,应用程序应该知道如何显示该错误。

我回答使用try catch语句,但面试官不接受这个答案。我谷歌但没有得到任何答案。

谁能告诉我合适的方法呢?

1 个答案:

答案 0 :(得分:1)

好吧,单独尝试/ catch 并没有真正做太多事情,从你的DAL / DB / repo呈现UI对话框肯定是不好的做法层。我会:

    DAL中的
  • 捕获预期的SQL异常并抛出UI可以预期的文档化异常
  • 在UI图层中,捕获您投掷的异常并向用户提供合适的对话框

当然,您的UI应该真的希望在此方案中捕获任何异常;只是它可能会在预期的(可预测的)异常上放置一个更友好的面孔 - 并且在没有期望的情况下更加谨慎。

更好的答案是:预先验证您的方案,以便期望异常 > - 然后任何异常都是这样的:例外。

但总的来说:永远不要害怕向面试询问他们的想法;然后,您可以讨论每种方法的优点(而不是)。此外,永远不要认为面试官知道一切。我绝对绝对没有任何疑虑告诉面试官(很好,记住)他们错误地认为技术问题。这可能是偷偷摸摸的,但面试官可能实际上是寻找,因为有人在发生技术错误时不敢说出来,因此会在技术讨论中注入微妙的喋喋不休。