我下了很多基於VS2003(以及VS2002)的Asp.net的Demo。而我用的是VS2005,我在使用這些Demo時,基本上絕大部分基於VS2003的Asp.net工程都因為少數文件無法轉換而無法加載工程,我也為些鬱悶了好久,後來終於讓我找到了解決方法:
Asp.net基於VS2005的工程與以往版本的工程的最大區別就是用分部類別(partial)取代了程式碼隱藏(Codebehind)。
於是我採取的方法是:
1. 用開啟網站的方式開啟這個工程。這樣VS2005也會進行轉換,而且也會報錯,但與直接打解決方案無法載入不同的是,這次它展開了網站的所有檔案。如果你現在運作工程,也不會成功的。
2. 開啟filename.aspx檔案到原始碼視圖,將@Page指令中的屬性“Codebehind”改為“CodeFile”,
3. 將與此對應的Codebehind檔案filename.aspx.cs,將繼承於System.Web. UI.Page的類別定義class前加上partial關鍵字。
4. 執行工程,它會提示你在filename.aspx中已經包含controlname的定義,追蹤錯誤到filename.aspx.cs,將那些被指示錯誤的重複定義刪除。
5. 然後重複2-4步驟直到所有的檔案都改過來,再運作工程應該就可以運作成功了。不過也許會報幾個警告說某某已經過時,不用去管它。
我用這個方法將那些老頑固(包括2003以及2002的工程)都成功轉換了,真的是屢試不爽。這只不過是我自己總結出來的方法,也許有人有更好的辦法,如果有更好的方法也請指示。
http://www.cnblogs.com/nihgwu/archive/2006/08/11/474604.html