ASP.NET1.1升級(jí)到ASP.NET2.0的心得體會(huì)
費(fèi)了好一袋煙工夫把CommunityServer升級(jí)到了Asp.Net2.0平臺(tái),一點(diǎn)心得:
vs2005可以很方便的幫我們把vs2003開發(fā)的asp.net1.1版本項(xiàng)目升級(jí)到vs2005開發(fā)的asp.net2.0版本,從vs2005里面打開vs2003的解決方案或者項(xiàng)目文件,會(huì)有向?qū)臀覀冏约和瓿缮?jí)工作。一部分asp.net1.1的項(xiàng)目做完這個(gè)工作就足夠了。
不過(guò)更多的時(shí)候不會(huì)這么順利,還要注意一些問(wèn)題:
vs2003開發(fā)的asp.net1.1程序,不會(huì)檢查aspx、aspcx等文件中的語(yǔ)法錯(cuò)誤,而vs2005會(huì)檢查項(xiàng)目中所有的aspx、aspcx等文件中的語(yǔ)法,所以如果有語(yǔ)法錯(cuò)誤,會(huì)導(dǎo)致編譯無(wú)法通過(guò)。
vs2003中,如果用的是默認(rèn)的代碼綁定方式,那么在aspx文件(以aspx文件為例,ascx文件也有這個(gè)問(wèn)題)中申明的服務(wù)器端控件,會(huì)在aspx文件對(duì)應(yīng)的aspx.cs文件中,生成一個(gè)對(duì)應(yīng)的申明,例如aspx中有一個(gè)TextBox,ID是MyTextBox,那么在aspx.cs中,會(huì)申明一個(gè)"protected TextBox MyTextBox;",而在vs2005中,這個(gè)申明是多余的,所以升級(jí)后要去除這些多余的申明。
如果有程序采用了asp.net1.1下的Membership——使用MemberRole.dll,要升級(jí)到asp.net2.0下的Membership,需要做如下工作:
刪除所有項(xiàng)目中對(duì)"MemberRole.dll"的引用,添加"System.Configration"的引用
改變命名空間ScalableHosting.Profile -> System.Web.Profile;ScalableHosting.Security -> System.Web.Security; 同時(shí)添加using System.Configuration;
移除所有MemberRole.dll相關(guān)的Membership配置,參照以前的Membership配置,增加asp.net2.0支持的Membership配置,更新Membership的存儲(chǔ)過(guò)程。
CCS1.1 for asp.net2.0的下載:http://www.communityserver.cn/builds
【編輯推薦】