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


排行榜