2008-10-17 32 views
23

請記住,這對我來說是新的,我可能錯過了一些重要的東西。將現有ASP.NET網站逐步轉換爲MVC的最佳方法

我有一個基於ASP.NET Web應用程序的現有網站。我現在正在使用ASP.NET MVC進行新的開發,並打算逐漸用MVC基頁面替換大部分頁面。

我這裏有兩個問題:

1)我需要逐步替換的頁面,因爲我不能在一次轉換的一切。 2)如果可能的話,應該保留現有的(物理文件的)URL。

我看到它的方式,我有以下選擇:

1)創建的網站的根目錄一個全新的MVC Web應用程序,然後包括現有的HTML/ASPX/ASMX/...到那個頁面。這樣,路由總是相對於網站的根。

2)修改現有的Global.asax,Web.config,Default.aspx(等等)以切換MVC處理程序進行路由,然後將我的MVC應用程序發佈到子文件夾。

什麼是最簡單的方法來做到這一點,我錯過了什麼?

感謝, 洛朗

回答

9

像你一樣,我正在解決這個同樣的問題。我遇到的一些事情我已經在這裏發佈了https://stackoverflow.com/users/84825/mouffette,它們主要與SETUP有關。最好的辦法是啓動一個新的MVC項目,並將文件和結構與現有的ASP.NET應用程序進行比較。如果有疑問,只需移動一行一行和web.config的,最終你會得到它;-)

一旦你有管道工作,然後可以專注於MVC,它只是並排工作。

這些鏈接還幫助:

http://media.wiley.com/assets/1539/15/professionalaspnet35mvc_chapter13.pdf http://aspnetmvcbook.s3.amazonaws.com/aspnetmvc-nerdinner_v1.pdf

,你已經找到了最好的網站...計算器。

1

這真的取決於您現有的Web應用程序的狀態。如果主要是將業務邏輯嵌入到代碼隱藏中,那麼重寫可能會更好。如果你的數據對象模型和業務層與你的代碼分離得很好,那麼你就在這個轉換中領先於遊戲。不幸的是,這是一個非常難以回答的簡單問題,並且基於您目前的狀態而相當主觀。

「經典的ASP.Net網站」 - 聽起來很奇怪。

0

我認爲這個問題是錯誤的措辭,因爲這不是我的意思。我怎麼能整合基於MVC的網頁在現有的「經典」ASP.NET網站(是啊,我知道這聽起來很奇怪:))。我最終將取代整個內容(如果它意味着重寫某些頁面,那麼就這樣做),但我希望已經添加基於MVC的新內容。

我找到了關於如何創建新的MVC應用程序的指導,甚至是如何整合新的基於Web表單的內容,但更少的是關於如何將應用程序移植到MVC。

我發現這個鏈接 http://blog.eworldui.net/post/2008/05/ASPNET-MVC---Living-in-a-Web-Forms-World.aspx

這是有希望的,但它聽起來像是工作loooooooot。

具體而言,我正在尋找步驟來在現有的ASP.NET應用程序中添加基於MVC的新內容,並仍然像以前一樣保持舊內容的正常工作。

+0

您可以在MVC下運行一個子網站。 – leppie 2008-10-17 18:03:00

相關問題