2013-04-02 44 views
0

首先,我现在很困惑,可能无法正确解释自己。让我尝试。 我有一个业务层类,其中包含从UI层aspx页面调用的所有方法。通常如果一个方法抛出一个异常,我会在UI层上捕获它并显示一个特定的消息。如果没有,有时我会捕捉业务层并仅记录错误。现在我已经创建了第三个项目/图层,它将与外部apis(如VISA)交互,我将在业务层方法中调用它的方法。在api调用之后,我返回一个包含json响应,错误代码和描述等的对象,以防错误(例外),我需要向用户显示消息。我该如何做到这一点,而在业务层(最好的办法。我可以offcourse返回错误字符串或空字符串,以防成功)?或者我必须从UI层调用apis?这里是一个响应对象,它将通过API层发送。我会根据其内容显示错误或继续。如何在不同的应用程序层之间进行交互?

public class ResponseContainer 
{ 
    public bool Success { get; set; } 
    public string JSONString { get; set; } 
    public string ErrorCode { get; set; } 
    public string ErrorDescription { get; set; } 
    public bool? isVISAError { get; set; } 
} 

回答

0

因为没有身体能够指导我,所以我做了。我做了2个自定义异常类。业务和sql异常。捕捉业务层上的sql异常并抛出新的业务异常。所有的业务异常都被捕获到调用UI层的事件。在发生签证错误的情况下,我通过描述引发新的业务异常并捕获并显示在简单的标签字段中。通过这一点,我不必改变我的代码流或检查我的任何函数的返回值。
我希望这将有助于少数人,如果任何人有更好的解决方案,请让我知道

相关问题