1

我想實現數據庫第一種方法使用實體框架5.0,但不知何故我沒有得到它的權利。我有以下疑慮需要清除。實體框架5.0數據庫優先方法

1.添加Ado.Net實體數據模型後,在「Model.Context.tt」下的文件夾中自動創建DBContext類'Model.Context.cs'。 我是否需要再次添加DbContext生成器?(我發現其他人推薦了這個建議,但我不明白爲什麼!)

2.如何從edmx文件中搭建控制器? 假設我有一個實體,說A(我想支架到控制器),與實體B有一對多的關係,我將在哪裏定義這種關係?在從edmx文件自動生成的模型類或我創建類A & B並再次定義,然後腳手架模型A?

任何幫助將非常感激。謝謝

+0

隨着數據庫首先,你剛纔設置的表之間的關係,在數據庫和EF將產生其餘的工作。腳手架將會看到相關信息。只需使用腳手架添加新控制器,即可從數據庫中設置Model類和由VS生成的Datacontext。 – jannagy02

+0

謝謝你的答覆。是的,我已經試過用VS生成的DataContext類的腳手架模型類,但關係鍵並不像上面提到的那樣。我會嘗試分享代碼。謝謝。 –

回答

1

Abhatt:

  1. 什麼T4模板就產生了對你的類,你需要讓他們,除非你決定使用另一個T4模板。例如,你可能想要設計你的數據庫,但之後決定首先使用代碼來利用代碼優先的方法,在這種情況下,在設計數據庫之後,你將添加另一個名爲「EF 5.x DbContext Fluent Generator C#「,該模板爲您創建了poco類和所有映射。

  2. 無論何時添加控制器,mvc都使用腳手架來創建控制器的方法和視圖。但是,如果您想要更多地控制如何生成它們,可以從包管理器控制檯安裝MVCScaffolding。安裝MVCScaffolding後,您將能夠自定義t4模板。 欲瞭解更多信息CodePlex上看看MVC腳手架項目: http://mvcscaffolding.codeplex.com/ 也有個不錯的選擇: http://www.codeproject.com/Articles/468777/Code-First-with-Entity-Framework-5-using-MVC4-and

+0

添加名爲「EF 5.x DbContext Fluent Generator for C#」的t4模板後,出現如下錯誤 - **'MyApp.ModelEntities'類型已經包含'EntityName'**的定義。如何解決這個問題,爲什麼我得到這個? –

+0

您需要刪除先前生成的類,然後重新執行該過程。 – Ehsan

相關問題