我有一个情况:
假设我有一个User
课程
看起来像
public class User
{
public IEnumerable<ConnectionService> ConnectionServices {get;set}
}
public class ConnectionService
{
public int Id {get;set;}
public string ConnectionName {get;set;}
public string Username {get;set;}
public string Password {get;set;}
}
此处用户可以拥有多个ConnectionService。现在,连接服务具有用户名和密码,因此只有两个字段(不包括Id和ConnectionName)。如果某个连接服务需要20个字段怎么办?我可以在ConnectionService类中添加这些字段,但每次创建连接服务实例时,都会有该特定服务不需要的字段。我该如何解决这个问题?
答案 0 :(得分:1)
您应该将ConnectionService子类化(或者只声明interface)并使用其特定属性创建特定服务;然后,您可以在需要ConnectionService的任何地方使用其中任何一个,例如在用户中。这称为inheritance