簡體   English   中英

Linq to SQL或Entity Framework for Enterprise ASP.NET MVC應用程序架構?

[英]Linq to SQL or the Entity Framework for Enterprise ASP.NET MVC application architecture?

我仍在嘗試為復雜的ASP.NET MVC Web應用程序找出正確的架構。

我查看了很多示例代碼,到處都是以不同的方式完成的。

我真的很感激你對此的看法。

另一個問題:您是否會使用Linq to SQL或實體框架?

謝謝,

-ben

一些個人的想法和經驗:
- 使用nhibernate作為orm,或等待EF v4。 Tekpub.com有很好的使用NH的教程。 L2S和EF是一種黑盒子:它們做了很多事情,它們有很好的文檔,但它們沒有可擴展性。 如果要插入一些新功能或更改行為,則只能使用NH執行此操作。 第4節中的EF將處於NH為2或3年前的狀態。
- 盡可能多地瀏覽MVC應用程序示例。 你可以在codeplex上找到很多。 例如:CodeCampServer,WhoCanHelpMe,Storeddd
- 如果您正在考慮構建框架(或幫助程序)來解決某些基礎架構問題,請首先使用Google進行操作; 很有可能,比你更聰明的人(好吧,在我的情況下比我聰明)已經遇到了同樣的問題,並以框架形式(對象映射器,驗證,消息傳遞......)編寫了一段很好的代碼,或者只是關於它的博客。
- 使用尖銳的架構或fubuMvc解決了大部分基礎設施工作,但應用程序的其余部分取決於您的業務模式。
- TDD將迫使您編寫良好且可維護的代碼。 嘗試盡可能多地使用Gang of Four設計模式和SOLID原則。

查看此體系結構指南:ASP.NET MVC + N層+實體框架等等

如果你想使用ASP.NET MVC,但是為了讓你的安排能夠自信地用於你的下一個商業項目,我們正在努力。 這篇文章只適合你。 本文指導您使用ASP.NET MVC構建一個小型文檔管理系統。

由於您要使用MVC應用程序,因此可以輕松地在Controller層下面編寫DataAccess層。 這將使它成為一個分層的應用程序 因此,這可能是您的架構需求的正確選擇。

對於LinQ-SQL或Entity Framework問題,我只使用了Entity框架。 所以不確定Linq to Sql選項。 但是當架構發生變化時,Entity Framework會出現一些問題。 當重命名列等時,生成的edmx的更新不會正確發生。所以我所做的是在每次模式更改后刪除並創建edmx,您必須手動更新那里的更改。

您會使用Linq to SQL還是實體框架?

如果要訪問直接映射到數據庫的對象模型,Linq2SQL非常棒。 例如,如果您有一個“訂單”表,Linq2SQL將創建一個“訂單”對象,您可以使用該對象來訪問數據。 這通常是完全足夠的。

當您想要創建可能不直接映射到數據庫的對象模型時,實體框架非常有用。

到處都是不同的,這就是原因。 這個問題沒有一個通用的答案。 看看其他方法,並從他們那里獲取任何對你的情況有用的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM