c# - 让业务逻辑对象提示用户输入是不是糟糕的设计?

标签 c# .net oop design-patterns

我有一个正在实现的流程图,它有 4 或 5 个路径,具体取决于用户输入和某些处理的结果。自然地,我不希望所有这些逻辑都出现在我的 Windows 窗体中,我只想在窗体中的类上调用一个方法。让我的业务逻辑类引用 System.Windows.Forms 并显示对话框和 MessageBoxes 来获取它需要处理的输入并返回结果是不是糟糕的设计?

最佳答案

是的,这是糟糕的设计。您的类(class)应该提供一种与表单通信并取回数据的方法。只需创建事件并让 Form 订阅它们,从自定义 EventArgs 类获取信息以创建对话框。在它获得输入后,只需通过第二个事件将同一个类与附加信息一起推回去。

这应该类似于 MVP 模式。

关于c# - 让业务逻辑对象提示用户输入是不是糟糕的设计?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4651695/

相关文章:

c++ - 大数据的内存组织

c# - RichTextBox 的自动化支持 - 无法使用 White'sUI 获取文本

C# 等效于 Java Class<?扩展基地>?

c# - BinaryFormatter.ILMerge 后反序列化 "unable to find assembly"

c# - 如何提高 double 类型对于大数的精度?

php - 从 SELECT 查询返回行的 num_rows 问题

c# - 从网络运行 Excel 宏?

c# - MMC 自定义管理单元安装

c# - 获取 FileInfo 本身?

c++ - 在 2 个 cpp 文件中定义一个 C++ 类?