NET移植案例學習:建造Web網(wǎng)站(1)
發(fā)表時間:2024-02-24 來源:明輝站整理相關軟件相關文章人氣:
[摘要]本文要求你熟悉Visual Studio 6.0,ASP和IIS 難度:2 摘要:當收集客戶對Visual Studio .NET beta版反饋的網(wǎng)站需要升級的時候,Visual Studio開發(fā)小組發(fā)現(xiàn)這是一個使用.NET技術來開發(fā)一個真正的網(wǎng)站的好機會。本文描述了移植beta.visua...
本文要求你熟悉Visual Studio 6.0,ASP和IIS
難度:2
摘要:當收集客戶對Visual Studio .NET beta版反饋的網(wǎng)站需要升級的時候,Visual Studio開發(fā)小組發(fā)現(xiàn)這是一個使用.NET技術來開發(fā)一個真正的網(wǎng)站的好機會。本文描述了移植beta.visualstudio.net站點的過程,說明了如何使用ASP .NET和.NET框架將原來用Visual Basic 6.0和ASP開發(fā)的,發(fā)布在Microsoft Internet Information Services (IIS) 5.0上的組件移植到.NET平臺下。還將介紹技術的選擇和檢查有效性、安全、認證等問題,并對現(xiàn)存的和新的用JScript 及ASP .NET開發(fā)的用作移植的組件作必要的解釋。
Visual Studio開發(fā)小組設計了從測試站點得到用戶反饋的機制,這是Visual Studio .NET beta版的一個部分。為此開發(fā)組在開發(fā)環(huán)境中增加了一個LAME按鈕,它能幫助用戶提交對這個產(chǎn)品的任何意見,包括對錯誤信息描述和菜單設計的意見等(參見圖1)。開發(fā)小組還設計了跟蹤用戶如何使用產(chǎn)品的機制。產(chǎn)生的日志文件能幫助開發(fā)組進一步確定用戶的需求。開發(fā)組用http://beta.visualstudio.net這個站點來收集這些信息和用戶發(fā)現(xiàn)的漏洞,并向用戶發(fā)布升級信息。
圖1 LAME按鈕
這個Web站點的以前使用基于Microsoft Internet Information Services(IIS)5.0的Visual Basic? 6.0和ASP開發(fā)的。隨著.NET產(chǎn)品的不斷成熟,開發(fā)組希望通過在一個真實的開發(fā)環(huán)境中使用他們以獲得第一手的體驗,所以決定將這個站點移植到Visual Studio .NET和Microsoft .NET框架下。
通過自己的親身體驗,開發(fā)組對產(chǎn)品有了進一步的認識,為其他開發(fā)者充分利用.NET平臺和Visual Studio .NET提供了很好的范例,還了解了哪些開發(fā)技術在Visual Studio .NET中仍然可以使用。
在這篇文章中,我將介紹將這個Web站點移植到.NET平臺時使用的一些技術,得到的教訓,并提供一些技巧來幫助你將應用程序移植到.NET平臺。
原先的站點設計
這個跟蹤站點由三個獨立的Web站點組成。普通用戶可以通過公眾站點登陸、報告產(chǎn)品漏洞、上傳日志文件、查看升級信息和已知的問題。Microsoft的員工可以通過內部網(wǎng)訪問鏡像站點無須通過公司的防火墻。Beta版的程序管理員可以通過管理站點得到測試網(wǎng)站的清單,管理站點的內容,配置站點其它的信息。
這個Web站點原先是用Visual Basic 6.0,ASP, Windows 2000和SQL Server? 7.0建立起來的。那時候,Visual Studio .NET和.NET框架是作為技術預覽被發(fā)布的,用它來建造這個站的模塊還顯得不成熟。因此,我們用了Visual Studio和Windows2000的技術來建造這個站點的。
這個站點的體系結構符合Windows DNA 2000應用程序設計模型。我們用Active Server Pages 3.0開發(fā)了客戶端的UI,并發(fā)布在IIS5.0上。這個程序的邏輯和數(shù)據(jù)訪問代碼在一個用Visual Basic 6.0寫出的ActiveX DLL中,并注冊到了COM+中。Visual Basic使用ActiveX Data Objects (ADO)來訪問SQL Server 7.0數(shù)據(jù)庫。圖2 說明了這個站點基本的體系結構。
圖2 測試站點的體系結構
當開發(fā)組考慮如何將這個站點移植到Visual Studio .NET Beta 1的時候,他們決定只修改外部的客戶站點(我將在下部分解釋為什么這么做)而不修改管理站點。升級外部站點能實現(xiàn)他們獲得第一手資料的愿望,并為客戶提供了一個如何在.NET下開發(fā)軟件的范例。