如何从方法返回类型t
本文关键字:返回类型 方法 | 更新日期: 2023-09-27 17:52:46
我有下面的方法来设置IEntity的一些属性。我的总体想法是,我希望所有实现IEntity的类都使用这个帮助器。问题是,这返回IEntity,而不是类型t,怎么做呢?
public static IEntity Create(IEntity entity, Company company)
{
entity.Company = company;
entity.Key = Guid.NewGuid();
entity.Created = DateTime.Now;
entity.Modified = DateTime.Now;
entity.ModifiedByUserName = "xxx";
entity.CreatedByUserName = "xxx";
return entity;
}
我目前从我的控制器调用类,像这样。(TaskOrder实现IEntity)
var taskOrder = EntityHelper.Create(taskOrder (), company);
阅读c#中的泛型,网上有很多相关的资料。
下面是一个基于你的代码的例子:
public static T Create<T>(T entity, Company company) where T : IEntity
{
entity.Company = company;
entity.Key = Guid.NewGuid();
entity.Created = DateTime.Now;
entity.Modified = DateTime.Now;
entity.ModifiedByUserName = "xxx";
entity.CreatedByUserName = "xxx";
return entity;
}