我有一个接口定义如下:C#中的LINQ`名单<Interface> .AddRange`方法不工作
public interface TestInterface{
int id { get; set; }
}
和两个实现该接口的LINQ到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();
Howev呃,以下是不允许的:
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)
有什么我做错了吗?感谢您的帮助
+1感谢您的修复,非常感谢 – Jimbo 2010-07-14 10:34:23