表单应该包含一个对象,还是一个包含该表单的对象?

时间:2014-03-13 14:42:32

标签: c# winforms

假设我只有一个项目的Windows窗体。如果我有另一个用于发出HTTP请求和处理数据的类,我应该使用哪种解决方案?

public class MyForm: Form
{
     private MyObject myObject;
}

或者这个:

public class MyObject
{
    private MyForm myForm;
}

1 个答案:

答案 0 :(得分:5)

通常在课堂上使用Form对象并不是一个好主意。但这取决于具体情况。

如果您的类负责进行HTTP调用并处理数据,使其看起来更像是业务层或数据访问层对象,那么它应该独立于UI

想象一下,如果您需要在Web应用程序中使用相同的类,那么您可以在单独的类库中提取该类,并在Web和桌面应用程序中使用它。但是,只有当您的班级独立于UI时,这才有效。如果您的班级中有表单对象,那么您将耦合 UI与您的逻辑相关联。