我正在学习Web服务,我正在使用的书是使用实体框架从SQL服务器中提取数据(我对此也知之甚少).
不幸的是,实体框架创建的类包含以下内容:
public Conference()
{
this.Sessions = new HashSet<Session>();
}
public virtual ICollection<Session> Sessions { get; set; }
Run Code Online (Sandbox Code Playgroud)
这导致问题,因为接口不可序列化:
无法序列化System.Collections.Generic.ICollection类型的成员X ...因为它是一个接口.
现在,我可以(并且确实)修改生成的类以使用具体类,但如果我需要重新生成实体,则该更改将被撤消.理想情况下,我可以告诉实体框架生成这样的东西(甚至更好,控制具体类型,以便我可以告诉实体框架如果我想要使用List):
public Conference()
{
this.Sessions = new HashSet<Session>();
}
public virtual HashSet<Session> Sessions { get; set; }
Run Code Online (Sandbox Code Playgroud)
可能吗?如果是这样,怎么样?