簡體   English   中英

使用現有的Postgres數據庫進行MVC3數據庫訪問

[英]MVC3 database access using existing Postgres database

我有一個基於3層體系結構的應用程序,其中postgres數據庫(npgsql)具有400多個存儲過程,現在我想使用MVC3 Framework開發相同的應用程序。

我想知道什么是將現有數據庫與這些存儲過程一起使用的最佳方法,我遇到了代碼優先方法(http://weblogs.asp.net/scottgu/archive/2010/08/03/using- ef-code-first-and-existing-database.aspx),但想知道它是否是最佳解決方案。

我也讀到了Razor的好處,但是我的應用程序有很多DataGridViews和TabContorls,所以我想知道Razor會很容易嗎?

我建議使用類似您已經擁有的東西(http://npgsql.projects.postgresql.org/),然后可以利用現有的框架/基礎結構(如何從現有應用程序中查詢數據庫)。

其次,如果您使用的是DataGridViews和TabControl,則ASP.NET MVC不能真正與服務器控件一起使用,您要么必須獲得一個為您提供網格的HtmlHelper,要么自己構建一個。

我認為需要問的問題是,為什么要使用MVC vs WebForms 4.0?

首先,您必須確定使用MVC3開發現有應用程序所需的重構級別或轉換級別,因為您可能會花費大部分工作

由於以下原因:

使用MVC作為技術與如何將DDD作為OOP設計或常規OOP有關,在這兩種方法中,主要層是域模型而不是DB,因此您需要將所有存儲過程轉換為域模型內部的業務邏輯。本身或使用現有數據庫,在這種情況下,您將失去使用MVC的一大好處

在表示層中使用MVC時,不考慮使用DataGridViews或TabContorls,因此您也需要拋出它們,並且沒有解決方案來重用它們。

最后,使用MVC的主要好處是單元測試的能力和MVC提供的高級別的可維護性,因為模式的性質和方法本身>

因此,您必須非常認真地考慮要達到的轉換水平,以決定要保留的內容以及將要丟棄的內容,但是我建議您,如果您真的不打算重組整個項目,請不要轉換為MVC,只需保持項目不變,然后對其進行重構並增強現有方法

暫無
暫無

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

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