我编写了一个 C# MVC5 Internet 应用程序,想知道是否可以将接口与 EF6 一起使用,如果不能,我应该如何编写我的类。
这是我所拥有的有效方法:
public class TestObjectWithObjectList
{
[Key]
public int Id { get; set; }
public virtual List<TestObjectItem> items { get; set; }
public TestObjectWithObjectList()
{
items = new List<TestObjectItem>();
}
}
我有一个DbSet<TestObjectWithObjectList>
. 当我将 a 添加TestObjectWithObjectList
到 DbSet 时,我还将 a 添加TestObjectItem
到List<TestObjectItem>
. 当我检索 时TestObjectWithObjectList
,List<TestObjectItem>
计数为 1。
这是相同的代码,但带有List<ITestObjectItem>
:
public class TestObjectWithInterfaceList
{
[Key]
public int Id { get; set; }
public virtual List<ITestObjectItem> items { get; set; }
public TestObjectWithInterfaceList()
{
items = new List<ITestObjectItem>();
}
}
我有一个DbSet<TestObjectWithInterfaceList>
. 当我将 a 添加TestObjectWithInterfaceList
到 DbSet 时,我还将一个TestInterfaceObjectItem
(实现ITestObjectItem
接口的)添加到List<ITestObjectItem>
. 当我检索 时TestObjectWithInterfaceList
,List<ITestObjectItem>
计数为 0。
是否可以让上述代码与 a 一起使用List<ITestObjectItem>
?我想要做的是能够向 中添加许多对象List<ITestObjectItem>
,并且能够通过获取TestObjectWithInterfaceList
对象来检索它们。
提前致谢