我搜索过,但无法找到有关使用List<MyComplexType>
的任何信息。这是我正在寻找的0对多关系。
我正在使用EF6进行代码优先设计,我有一个复杂的类型设置:
[ComplexType]
public class Image
{
public byte[] Bytes { get; set; }
public string Name { get; set; }
public string ContentType { get; set; }
}
当我将此添加到另一个模型时:
public class UserProfile
{
//User Profile properties
public List<Image> Images { get; set; }
}
然后创建一个新的迁移并更新数据库如果我查看数据库图表,我在任何地方都看不到有关Images
的任何信息。没有关联表,没有 - 看起来它被忽略了。
但是,当我将UserProfile
类更改为如下所示时:
public class UserProfile
{
//User Profile properties
public Image Image { get; set; }
}
然后查看数据库图表,我看到这些列:
//Bunch of other columns, name, address, etc.
Image_Name
Image_Bytes
Image_ContentType
无论如何,我可以做List<MyComplextType>
吗?
答案 0 :(得分:0)
要获取Images表,您还需要将其添加到数据上下文中。像这样:
public virtual DbSet<Image> Images { get; set; }
(您还应该为Image类添加主键。在UserProfile类中,Images应定义为public virtual ICollection<Image>
)