我有一个函数,它接受一个对象参数说实体并返回如下的具体对象。具体对象继承自IEntity。
public IEntity GetEntity(object entity)
{
if(entity is A) { .... return new Customer(); }
else if(entity is B) {... return new Invoice(); }
.......
}
这显然有效,但我想知道这是否是最佳方法,还是从架构角度出发还有其他替代方案和推荐方法?
谢谢!
答案 0 :(得分:1)
您可以使用泛型:
public IEntity GetEntity<T>(T entity)
where T : IEntity, new()
{
return new T();
}