我正在使用實體框架在C#中生成類和函數我需要與SQL服務器交互。實體框架不爲表或過程生成類
供參考,這是我的一個表:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Area](
[ID] [bigint] identity (1, 1) primary key,
[Name] [nvarchar](100) NOT NULL
)
GO
運行的實體數據模型嚮導(使用「EF設計師從數據庫」)之後,我的項目有EDMX文件和一些新的.cs文件,但它似乎並沒有產生它所需要的一切。
在我DatabaseEntities類,例如,我有:
public virtual DbSet<Area> Areas { get; set; }
然而,有該類型「區」沒有定義(連同其他三名失蹤類型)。我也缺少存儲過程的功能。
我試過刪除新文件並重新運行模型嚮導,但我得到了相同的結果。
有沒有其他人遇到過這個問題?
圖片的標題說明:
我過去幾年的嘗試,該向導運行時我還得到一個錯誤過程中發現:「實體框架包裝不上項目」。但是,當點擊它時,它仍然生成edmx和model.context。
我對於Entity Framework版本6.0.0和6.1.2都有同樣的問題。
重新安裝框架對問題沒有影響。
UPDATE:
卸載的NuGet並重新安裝最新版本讓我沒有錯誤通過的NuGet安裝的EntityFramework。但是,現在ADO.NET數據模型從Add New Item對話框中丟失了。
如果您正在從現有數據庫執行CodeFirst,則不會獲得任意存儲的特效或tvfs,因爲它們不是由CodeFirst本機支持的。 – Pawel 2015-02-17 22:16:20
對於存儲過程,您可能需要添加下兩行: SET FMTONLY OFF SET NOCOUNT ON 在對話框中可以創建複雜類型。 建議再次移除FMTONLY ON。 對於表格,你可以顯示錶格定義嗎? – Ako 2015-02-17 22:24:46
@Pawel:我使用數據庫中的EF Designer。 – 2015-02-17 23:23:14