我有一个定义如下的接口:
public interface TestInterface{
int id { get; set; }
}
还有两个实现该接口的 Linq-to-SQL 类:
public class tblTestA : TestInterface{
public int id { get; set; }
}
public class tblTestB : TestInterface{
public int id { get; set; }
}
我有 IEnumerable 列表 a 和 b 由 tblTestA 和 tblTestB 的数据库记录填充
IEnumerable<tblTestA> a = db.tblTestAs.AsEnumerable();
IEnumerable<tblTestB> b = db.tblTestBs.AsEnumerable();
但是,以下情况是不允许的:
List<TestInterface> list = new List<TestInterface>();
list.AddRange(a);
list.AddRange(b);
我必须这样做:
foreach(tblTestA item in a)
list.Add(item)
foreach(tblTestB item in b)
list.Add(item)
有什么我做错了吗?谢谢你的帮助