我有以下POCO类,我定义并将与Entity Framework一起使用:
public class Application
{
public int ApplicationId { get; set; }
public string Name { get; set; }
public virtual byte[] RowVersion { get; set; }
public virtual ICollection<TestAccount> TestAccounts { get; set; }
}
以下是使用EF Code First
创建的表CREATE TABLE [dbo].[Application] (
[ApplicationId] INT IDENTITY (1, 1) NOT NULL,
[Name] NVARCHAR (35) NOT NULL,
[RowVersion] ROWVERSION NOT NULL,
PRIMARY KEY CLUSTERED ([ApplicationId] ASC)
);
有人向我建议我应该有一个构造函数并且在那个构造中 TestAccounts集合。这是正确的,如果是这样,那将是最好的 创建这个的方法。
还有一个问题。对于TestAccounts,我应该使用IList还是ICollection?一世 我不确定最好的是什么?
答案 0 :(得分:0)
因为您有虚拟属性,所以您可能会将POCO与代理一起使用。在这种情况下,您无法手动构造正确的代理,并且必须始终使用此方法的ObjectSet.CreateObject或DbSet等效于新对象实例化。