我定义了一个如下的接口:
我有两个IEnumerable列表a和b,它们由来自tblTestA和tblTestB数据库记录填充。
然而,以下内容是不允许的:
我必须按照以下步骤进行:
我有做错的地方吗?感谢任何帮助。
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)
我有做错的地方吗?感谢任何帮助。
IEnumerable<TestInterface>
。这是否成立取决于您使用的 C# 版本... - Jon Skeet