我用两个字段编写两个公共类(test1,test2),e。 G。 '名称'和'姓氏' 然后,我想将数据库中的数据填充到此对象中。 我的第一次尝试是:
public List<T> FillFromDB<T>()
{
IQueryable<T> query =
from tbl in _table
select new T {Name=tbl.name, Surname=tbl.surname}
}
但是我不知道这些领域。我能做什么?谢谢你的帮助。
答案 0 :(得分:5)
您可以创建Test1
和Test2
将从中继承的公共接口(或类),然后在FillFromDb
的类型参数上指定必要的约束。
public interface IHasName
{
public string Name { get; set; }
public string Surname { get; set; }
}
public class Test1 : IHasName
{
public string Name { get; set; }
public string Surname { get; set; }
}
public class Test2 : IHasName
{
public string Name { get; set; }
public string Surname { get; set; }
}
public List<T> FillFromDB<T>()
where T : new(), IHasName
{
IQueryable<T> query =
from tbl in _table
select new T {Name=tbl.name, Surname=tbl.surname}
}