如何在不同的应用层之间进行交互?

时间:2013-04-02 16:05:44

标签: asp.net visa

首先,我现在很困惑,可能无法正确解释自己。让我尝试。 我有一个业务层类,其中包含从UI层aspx页面调用的所有方法。通常,如果方法抛出异常,我会在UI层上捕获它并显示某个消息。如果没有,有时我会抓住业务层并仅记录错误。现在我创建了第三个项目/层,它将与外部apis(如VISA)交互,我将在业务层方法中调用其方法。在api调用之后,我返回一个包含json响应,错误代码和描述等的对象,以防出现错误(异常)我需要向用户显示消息。如何在业务层上做到这一点(最好的方法。我可以在成功的情况下返回错误字符串或空字符串)?或者我必须从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; }
}

1 个答案:

答案 0 :(得分:0)

因为没有人能指导我,这就是我所做的。我做了2个自定义异常类。业务和SQL异常。在业务层上捕获sql异常并抛出新的业务异常。所有业务异常都在调用UI层的事件。在签证错误的情况下,我抛出一个新的业务例外与描述和捕获并显示在简单的标签字段上。通过这个,我不必改变我的代码流程或检查我的任何功能的返回值。
我希望这对少数人有帮助,如果有人有任何更好的解决方案,请告诉我