c# - 有一个空的基类是不好的设计吗?

标签 c# .net interface application-design

我的 DTO 类需要一个基类,它将在我的通用接口(interface)中使用。

但是 DTO 类没有任何共同点。它们只是包含一些属性的哑类。

public void GetGridData()
{

   IDataForGrid<DTOBase> aa;

   if(request == 1) aa = new CustomerGridData;
   if(request == 2) aa = new OrderGridData;

   var coll = aa.GetList();
}

public class CustomerGridData : IDataForGrid<CustomerDTO>
{
  ...
}

最佳答案

如果它们没有共同点,您打算如何处理从列表中检索到的实例?

无论如何,拥有基类意味着当(好吧,如果)您确定他们以后需要有共同点的东西时,您不需要必须回去重构(重新建立)一切。但是在任何情况下,我都会考虑对这类事情使用接口(interface)而不是基类,因为这听起来不像是重用底层实现的强烈需求(因为它们还没有任何共同点!)。这将取决于您认为他们以后可能最终拥有的共同点。

关于c# - 有一个空的基类是不好的设计吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2424287/

相关文章:

c# - Wpf 的 RichTextBox 替代方案

.net - 如何在 .net 项目中将 Reg-Free COM 用于 vb6 dll 引用?

java - 接口(interface)的静态字段和最终字段的含义

javascript - typescript 访问带有句点(.)运算符的特定对象的对象的变量

c# - 异步运行两个任务

c# - 如何将依赖项注入(inject) .Net Core 项目中的自定义 WebHostService?

c# - ASP.NET/C# : Get nearest future date based from list of days

c# - 依赖注入(inject)和缓存类最佳实践

c# - 正则表达式 - 仅匹配包含任何字母字符的字符串

c# - 为什么 C# 中的基类允许在不继承接口(interface)契约的情况下实现接口(interface)契约?