嘿设计模式专家 -
我正在尝试在VB.NET GUI中构建一个四步过程。应用程序将对象从AppA传输到AppB。
该应用程序将遵循以下步骤:
我是MVC的新手,我正在试图弄清楚它应该如何运作。我已经在模型中实现了以下功能,但是不知道MVC方式将它们绑定到我的GUI中:
Function getQueryResults(queryParams) as Items
Function transferItems(items)
我是否将Items数据结构保留在模型中?
如何在不在视图中构建逻辑的情况下从Items数据结构中删除取消选择?
上述两个功能都需要时间,我如何设计允许我使用BackgroundWorker模型的功能呢?
谢谢
答案 0 :(得分:0)
请注意我是C#而不是VB dev,但无论如何都应该以相同的方式工作。
认为你的观点真的非常愚蠢。
你的观点根本不应该有任何逻辑。每当它看到用户做某事(比如取消选择项目)时,它应该告诉控制器。每当控制器希望Gui显示新内容时,它应该告诉视图这样做。通常在视图和控制器之间或模型和视图之间存在主题/观察者模式,以便视图在事情发生时自动更新或通知控制器。
在这种情况下,想象一下像这样的对话。
您可以将Items数据结构保留在域对象中,也可以将Items列表作为MVC用途的模型。
让它更像MVP或MVVM的好处是用模型周围的包装器呈现视图,为它提供它所需要的东西以及它所需要的东西 - 例如,你可以给它一个包装器其中包括物品,还有一个标志,表示当你的工人不在做什么时“忙”。
希望这有帮助。