Asp.net-Mvc
在 MVC 應用程序中將實體框架數據模型放在哪裡?
讓我們考慮預設的 ASP.NET MVC 應用程序文件夾結構,它看起來像這樣:
-App_data -Content -Controllers HomeController.cs -Models AccountModels.cs -Scripts -Views我的問題是:放置實體框架數據模型 (EDMX) 文件的最佳位置在哪裡?是模型文件夾嗎?是的 - 我們知道好的解決方案是引入新項目並將其引用到 MVC 應用程序,但現在讓我們忘記這一點。
對於一個小項目,它應該是模型的一部分。對於較大的產品,儲存庫和關聯模型可以位於單獨的程序集中。
好吧,這是有爭議的,但我會為Models文件夾投票 +1。
唯一的其他候選者是App_Data,但這通常用於基於文件的數據庫(例如 SQL Server CE .MDF)和您不希望 IIS 提供服務的文件。
由於 EDMX 是數據庫的抽象,它應該進入Models文件夾。
如果項目變得更大,您應該明確地將您的 EF 模型移動到另一個項目中。為了在未來證明自己,讓您的控制器通過儲存庫/介面訪問 EDMX,因此當您將 DAL 移動到另一個項目時,您所要做的就是添加引用並添加 using 語句。