本人獨家提供對于VS2005工程的負(fù)責(zé)人的話術(shù)
原來上網(wǎng)我下了很多VS2003的Asp.net的Demo。而我用的是VS2005,我在使用這些小樣時,基本上絕大部分基于VS2003的Asp.net工程都因為少數(shù)文件無法轉(zhuǎn)換而無法加載工程,為此我也后悔很久,后來終于讓我找到了解決辦法。
Asp.net基于VS2005工程與以往版本的工程的***區(qū)別就是用分部類(partial)取代了代碼隱藏(Codebehind)。
于是我采取的方法是:
1.用打開網(wǎng)站的方式打開這個工程。這樣VS2005也會進行轉(zhuǎn)換,而且也會報錯,但與直接打解決方案無法加載不同的是,這一次它展開了網(wǎng)站的所有文件。如果你現(xiàn)在運行工程,也不會成功的。
2.打開filename.aspx文件到源代碼視圖,將@Page指令中的屬性“Codebehind”改為“CodeFile”,
3. 將與這對應(yīng)的Codebehind文件filename.aspx.cs,將繼承于System.Web.UI.Page的類定義class前加上partial關(guān)鍵字。
4.運行該工程,它會提示你在filename.aspx中已經(jīng)包含controlname的定義,跟蹤錯誤到filename.aspx.cs,將那些被指示錯誤的重復(fù)定義刪去。
5.然后重復(fù)2-4步直至所有的文件都改過來,再運行工程應(yīng)該就可以運行成功了。不過也許會報幾個警告說某某已經(jīng)過時,不用去管它。
#t#我用這個方法將那些老頑固(包括2003以及2002的工程)都成功轉(zhuǎn)換了,真的是屢試不爽。這只不過是我自己總結(jié)出來的方法,也許有人有更好的辦法,如果有更好的方法也請指點。我的機子配置是:操作系統(tǒng)是Win2003,一開始裝的平臺是VS2005工程,.net2.0,由于項目的需要,所以裝了.net1.1,平臺用的是vs2003,在運行項目時,系統(tǒng)報錯:自動附加到計算機“SOFTSERVER”上的進程“[3940] w3wp.exe”失敗,后來發(fā)現(xiàn)原因是.net2.0和.net1.1有沖突,IIs中的Asp.net選項卡中的Asp.net版本默認(rèn)為2.0。
解決方法:
需要在IIS中重新注冊一下ASP.NET,在MS-DOS中運行:
C:\windows\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -i或在程序里面的Microsoft Visual Studio .NET 2003->Visual Studio .NET 工具->Visual Studio .NET 2003 命令提示執(zhí)行aspnet_regiis.exe –i。
修復(fù)成功后,就可以在IIS中打到1.1的.net版本
選擇IIs中的Asp.net選項卡中的Asp.net版本默認(rèn)為1.1。
自動附加到計算機“SOFTSERVER”上的進程“[3940] w3wp.exe”失敗的錯誤信息沒有了。
解后又出現(xiàn)了新問題,提示:
試圖運行項目時出錯:無法在WEB服務(wù)器上啟動調(diào)試.未能啟動ASP.NET或ATL SERVER 調(diào)試. 驗證服務(wù)器上是否正確安裝了ASP.NET或ATL SERVER
解決方法:
在IIS中的WEB服務(wù)擴展中,有兩項:asp.netv1.1.4322和asp.netv2.0.50727兩個選項,原來是asp.netv2.0.50727的狀況已經(jīng)允許,而asp.netv1.1.4322的狀況是禁止的,VS2005工程原因找到了,
就是把asp.netv1.1.4322的狀況也改為允許狀態(tài)。
問題解決了?。。?!