实体框架:如何将列映射到数据库?

时间:2016-03-05 19:39:30

标签: c# sql-server entity-framework

我的模型的属性需要来自自定义类型。此自定义类型具有两个属性[ID,TextToShow]。我想要的是只保存数据库中自定义类型的ID值。另一个TextToShow值仅在从数据库检索时使用。

我正在使用连接到SQL Server的EF6,VS2015和C#

3 个答案:

答案 0 :(得分:1)

如果您希望Entity Framework忽略数据库中的列,请使用模型属性上的NotMapped属性。

class Example {
    public Guid Id { get; set; }
    [NotMapped]
    public string TextToShow { get; set; }
}

答案 1 :(得分:0)

找到解决方案 1)我将ID字段的名称更改为其他名称,以便EF将其识别为键。

2)将TextToShow标记为[NotMapped]

结果:只有ID字段[已重命名]的值存储在数据库中。

*

  

对于遇到同样问题的人,请保持此对话开放

    *

答案 2 :(得分:0)

如果我做对了,你需要的是Complex Type使用EF Designer进行设置应该很容易。或者,如果您使用代码优先方法,则可以查看this blog post by Brady Holt

添加复杂类型后,您要使用[NotMapped]属性

标记要忽略的字段