【发布时间】:2011-04-04 12:09:38
【问题描述】:
我最近开始研究使用 MVP 设计模式来编写 winforms 应用程序,但对于如何构建一些东西有点卡住了。例如,我有一个应用程序在列表中显示一些记录;然后,用户可以从此列表中选择并单击“复制”按钮,该按钮复制与这些记录相关的文件。对于每个复制的文件,我需要写回数据库,更新记录的状态。
看起来很简单,但一方面我(大概)应该将文件复制逻辑保留在表单中,另一方面我应该调用更新演示器中的数据库。
【问题讨论】:
我最近开始研究使用 MVP 设计模式来编写 winforms 应用程序,但对于如何构建一些东西有点卡住了。例如,我有一个应用程序在列表中显示一些记录;然后,用户可以从此列表中选择并单击“复制”按钮,该按钮复制与这些记录相关的文件。对于每个复制的文件,我需要写回数据库,更新记录的状态。
看起来很简单,但一方面我(大概)应该将文件复制逻辑保留在表单中,另一方面我应该调用更新演示器中的数据库。
【问题讨论】:
为什么要在表单中保留逻辑?表单应该包含尽可能少的逻辑,如果它包含逻辑,它应该只是与用户界面直接相关的逻辑。由于复制文件是 buniess 逻辑,因此不应在视图对象中执行。
【讨论】: