gpt4 book ai didi

c# - 帮助为我的类创建一个基本接口(interface)

转载 作者:太空宇宙 更新时间:2023-11-03 22:11:26 25 4
gpt4 key购买 nike

我想为我所有的业务实体创建一个接口(interface)或基类(不确定我想走这条路)。对于每个业务实体,我需要以下内容:

  • Id - 实体的主键
  • 类型 - 实体的类型,例如用户,只是一个字符串
  • 名称 - 实体的名称,例如李四
  • 描述 - 实体的简短描述,例如高级程序员
  • CreatedDate - 实体的创建日期
  • ModifiedDate - 修改实体的日期

所有类都支持单个主键。

我的大部分类(class)都有这些字段,但在大多数情况下,主键会类似于 UserId。

我想在我的业务实体中创建一些共性的原因之一是我想实现一个搜索函数,该函数返回一个 IEntity(或实体类,如果利用继承)对象列表。

我的问题是......

  • 使用接口(interface)而不是基类的方法是否更正确?
  • 如果我确实将其创建为接口(interface),我应该保持属性简单,例如Id 和 Name ... 这将使我不必对每个属性实现进行编码,或者最好将“实体”附加到每个专有名称以便更容易与业务实体合作,例如MyEntity.EntityId 与 MyEntity.EntityId

我意识到这可能被认为是主观的,但我真的需要得到一些指导,所以任何使它不那么主观的想法都将不胜感激。

提前致谢!

最佳答案

在我看来...

如果您的类要对它们的某些方法有一些共同的实现,那么基类更有意义。因为你不能在接口(interface)内部实现,如果你要实现一个接口(interface),你会在多个类中有相同的公共(public)实现,而不是在一个基类中。

我认为将“实体”附加到每个属性是没有意义的。您已经通过实体对象的名称或其基础类型暗示它是一个实体属性。我说避免冗余并保持简单。

关于c# - 帮助为我的类创建一个基本接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6483709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com