2011-03-10 59 views
0

我有一個客戶誰是網站在ASP中完成...他們想要添加很多額外的功能到網站,但我不認爲這是值得的繼續發展在經典ASP &他們應該轉移到任何.NET或PHP。將ASP轉換爲ASP.NET - 簡單還是困難?

我對.NET沒有太多瞭解,所以想知道ASP代碼是否可以轉換爲.NET代碼&如果有的話,它會涉及多少努力?

編輯:這是怎麼一回事? http://msdn.microsoft.com/en-us/library/ms973813.aspx

+1

我覺得如果你把網站寫成全新的話,你會更好。如果你不想這樣做,我建議將部分舊網站的部分內容遷移到新的asp.net技術,該技術與舊的asp有90%的不同。 – MUG4N 2011-03-10 21:04:42

+0

我認爲你的第一個問題應該是「我對.NET不太瞭解」。 – xanatos 2011-03-10 21:07:04

+0

@xanatos:公平點大聲笑....如果我要重建網站,我可能會用PHP來做。 ;) – Brett 2011-03-10 21:12:40

回答

2

ASP.NET與ASP的差距很大。但是,我不同意其他人似乎在說什麼。

2002年,我將一個大的ASP網站轉換爲ASP.NET。如果你從VBScript轉到VB.NET,那麼實際上有很多遺留的功能被繼承。如果你不想採用ASP.NET Web表單通用的代碼隱藏體系結構,你甚至不需要。您甚至可以像使用ASP一樣使用經典的<!--#include-->文件。

我的意思是,遷移到ASP.NET時會出現很多問題。例如,數據訪問完全不同。但也有很多可以結轉。

所以,你有兩個選擇:

  1. 潛水,看看最小的變化有什麼突破。這可能聽起來不明智,但這正是我所做的。隨着Visual Studio幫助你解決編譯時錯誤,你應該能夠以這種方式更快地完成項目。
  2. 從頭開始重寫新的ASP.NET方式。這將使您能夠收取更多時間,並使您的應用程序更具前瞻性。

誠實地說,我寧願選擇今天的選項#2。但我認爲你應該知道轉換是可能的(並且總體工作量較少)。

3

我不知道很多關於.NET所以是 想,如果ASP代碼能夠在所有&如果是多少 努力參與它轉換 到.NET代碼?

兩者之間幾乎沒有什麼共同之處。您很可能會看完全重寫來進行升級。真正保留在傳統的ASP中將會阻礙他們擴展網站的能力。 Visual Basic 6(非.Net)不在身邊(假設核心邏輯是用編譯的VB dll編寫的),並且不會在x64 IIS實例中運行。

+0

是否可以共享狀態,登錄會話以及ASP經典和ASP.NET會話之間的內容?一步一步地遷移網站並設法將它們保持在一起是否合理? – 2011-03-10 21:06:33

+0

有兩種方法可以共享兩個會話,但我相信它涉及到手動發佈信息到asp.net和經典的asp網站。自從我不得不做那樣的事情已經有一段時間了,所以我的記憶可能有點模糊,但我知道有辦法讓它起作用。 – kemiller2002 2011-03-10 21:08:38

+0

最近我的一個客戶有一個ASP/ASP.NET解決方案在運行,並且工作得很好。他們仍然擁有ASP中的登錄頁面和ASP.NET中的其他內容,因此會話狀態是可共享的,這是肯定的。 – 2011-03-10 21:11:35

2

您無法成功將ASP網站轉換爲ASP.NET或ASP.NET MVC網站。

但是,您可以重用HTML和圖像等,即使它可能已過時。

+0

我添加了一個從MS到我的帖子的鏈接....那是怎麼回事?謝謝! – Brett 2011-03-10 21:15:27

+0

我想這是一個如何,但如果你保持一個ASP網站的結構和邏輯,並實際使它運行,你會最終得到一個相當凌亂的代碼庫。 你最好重寫整個事情。現在,您甚至可以找到可以開始構建的完整網站,例如Orchard CMS。 – 2011-03-10 21:22:19

0

他們沒什麼相似之處。您必須用新語言手動重新編碼它。

這可能聽起來很難做,但值得學習現代服務器端語言。

在這個特定的實例中是否值得它取決於問題所在的網站的複雜程度。

0

檢查this Microsoft's presentation關於如何將ASP應用程序遷移到ASP.NET 2.0。總而言之,即使他們提出了一些「如果時間不足」的遷移策略,但這並不容易理解。