没有为概念类型找到相应的对象层类型

时间:2014-11-01 20:36:18

标签: entity-framework

我一直在尝试将数据库中的状态表转换为可以从代码访问的枚举。

初始设置是一个状态表,其中包含我需要的几个条目(例如,活动,非活动等)。转换我做了如下:

  • 在Visual Studio 2013中打开EDMX文件,查找状态表,然后单击“Id”字段中的“转换为枚举”。
  • 更改了代码中所有引用,其中“Id”字段被设置为Int(从枚举中强制转换)。

我的解决方案现在构建和部署得很好。问题是以下错误:

No corresponding object layer type could be found for the conceptual type

我觉得代码知道数据库的方式,但数据库尚未配置。

我该如何解决这个问题?谢谢。

请注意,我的实体框架方法是数据库优先。

2 个答案:

答案 0 :(得分:4)

确保您的枚举名称与类型名称匹配。因此,例如,如果枚举是允许说“MyProject.Fully.Qualified.EnumName.MyEnum”,则在创建枚举类型时应该称为“MyEnum”。

答案 1 :(得分:3)

在我的情况下,我需要将Enum声明为Byte,这是我在带有实体框架的表属性中使用的类型。

示例:

Public Enum DataState As Byte
    Normal=0
    Deleted=1
End Enum