저는 VS2003(및 VS2002)을 기반으로 하는 Asp.net 데모를 많이 다운로드했습니다. 저는 VS2005를 사용하고 있는데, 기본적으로 VS2003을 기반으로 하는 대부분의 Asp.net 프로젝트를 로드할 수 없습니다. 왜냐하면 몇몇 파일을 변환할 수 없기 때문입니다. 그리고 마침내 해결책을 찾았습니다.
Asp.net의 VS2005 기반 프로젝트와 이전 버전 프로젝트의 가장 큰 차이점은 코드 숨김(Codebehind) 대신 부분 클래스(partial)를 사용한다는 점입니다.
그래서 제가 택한 방법은 다음과 같습니다.
1. 웹사이트를 열어 프로젝트를 엽니다. 이런 식으로 VS2005도 변환을 수행하고 오류를 보고하지만 로드할 수 없는 직접 솔루션과 달리 이번에는 웹 사이트의 모든 파일을 확장합니다. 지금 프로젝트를 실행하면 성공하지 못할 것입니다.
2. 소스 코드 보기에서 filename.aspx 파일을 열고 @Page 지시문의 "Codebehind" 속성을 "CodeFile"로 변경합니다.
3. 해당 Codebehind 파일 filename.aspx.cs는 System.Web에서 상속됩니다. UI.Page의 클래스 정의 앞에는 부분 키워드가 옵니다.
4. 프로젝트를 실행하면 controlname의 정의가 filename.aspx에 이미 포함되어 있다는 메시지가 표시됩니다. filename.aspx.cs에 대한 오류를 추적하고 오류를 나타내는 중복 정의를 삭제합니다.
5. 그런 다음 모든 파일이 변경될 때까지 2-4단계를 반복한 다음 프로젝트를 실행하면 성공적으로 실행됩니다. 그러나 이런저런 것은 더 이상 사용되지 않는다는 몇 가지 경고가 있을 수 있으므로 걱정하지 마십시오.
나는 이 방법을 사용하여 오래되고 완고한 모든 프로젝트(2003년과 2002년의 프로젝트 포함)를 성공적으로 변환했으며, 매번 실제로 작동합니다. 이건 그냥 제가 정리한 방법입니다. 혹시 더 좋은 방법이 있으신 분 계시면 조언 부탁드립니다.
http://www.cnblogs.com/nihgwu/archive/2006/08/11/474604.html