如何从逻辑层访问视图?

时间:2016-03-13 07:58:11

标签: c# .net 3-tier

我正在尝试使用C#在.NET Framework中创建ATM应用程序。我已经使用3层架构实现了它的一部分。

当用户选择提取现金时,流程从VIEW移动到LogicLayer,因为我在LogicLayer中添加了VIEW的引用。现在我需要从LogicLayer调用一个视图方法。有人可以告诉我该怎么做吗?

由于

class DataAccessLayerClass
{
    BusinessObjectClass read(BusinessObjectClass bo)
    {
        //read from file if user exists then return his credentials

        //else
        //call INVALID USERNAME / PASSWORD errror method in VIEW. 
    }
}

我可以从VIEW流到LL和DAl,但是如何反向流动?根据需要,

2 个答案:

答案 0 :(得分:0)

分层体系结构的整体思想是层是不透明的,上面的层仅依赖于下面的层,反之亦然,因此您不应该直接依赖于业务(逻辑)层中的视图。 UI应该发送请求,然后可能通过应用程序服务层对业务层的响应做出反应。 你究竟是如何做到的,以及你使用的模式,MVVM,MVC,MVP - 取决于你的技术堆栈,所以请分享更多细节

答案 1 :(得分:0)

不要尝试在业务层上使用视图功能。这是对应用程序结构的破坏。你必须考虑单向连接。不是对话。 例如:View可以调用逻辑层并返回结果。然后AGAIN视图根据结果调用逻辑。