2014-11-01 154 views
2

我一直在試圖將我的數據庫中的狀態表轉換爲我可以從代碼訪問的枚舉。概念類型找不到對應的對象層類型

最初的設置是一個狀態表,包含我需要的幾個條目(例如Active,Inactive等)。要轉換我做了如下:

  • 打開Visual Studio 2013中的EDMX文件,查找狀態表,然後單擊「ID」字段上的「轉換爲枚舉」。
  • 更改了「Id」字段設置爲Int(從枚舉轉換)的代碼中的所有引用。

我的解決方案現在建立並部署得很好。問題是以下錯誤:

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

我得到的代碼知道的方式,數據庫應該是感覺,但數據庫尚未配置。

我該如何解決這個問題?謝謝。

請注意,我的實體框架方法是數據庫優先。

回答

3

確保您的枚舉名稱與類型名稱匹配。因此,例如,如果枚舉是讓我們說「MyProject.Fully.Qualified.EnumName.MyEnum」當您創建枚舉類型應該被稱爲「MyEnum」。

+0

不知道這是什麼意思?枚舉名稱應該匹配哪個類型名稱? – 2015-11-06 09:27:26

+0

@ Le-roy不幸的是:-( – AroglDarthu 2017-04-05 11:42:47

+0

好吧,這很糟糕。 – Jaans 2017-07-04 05:45:01

1

在我的情況下,我需要將我的Enum聲明爲Byte,這是我在Entity Framework的表屬性中使用的類型。

例子:

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