17

Chúng tôi bắt đầu sử dụng VS 2010 và rất hài lòng với nó, vì vậy chúng tôi đã chuyển đổi dự án thành giải pháp 2010 (vẫn còn 3.5) và tiếp tục phát triển trong năm 2010. Tuy nhiên, chúng tôi đang nhận được rất nhiều lỗi gần đây và muốn quay trở lại 2008. Các tệp giải pháp đã thay đổi (các dự án và tệp mới được thêm ở mọi nơi), nhưng mọi thứ vẫn ở trong .net 3.5. Tôi đã tự hỏi nếu có một cách dễ dàng để di chuyển trở lại năm 2008.Cách chuyển đổi giải pháp VS 2010 trở lại năm 2008

+0

@ Atlas rất đơn giản - đó cũng là suy nghĩ đầu tiên của tôi - nhưng OP tuyên bố rằng các giải pháp đã thay đổi với các dự án và tệp mới. – ChrisF

Trả lời

18

Tùy thuộc vào nếu họ giữ cấu trúc tệp giải pháp tương tự giữa năm 2008 và 2010, bạn chỉ cần tạo một tệp giải pháp trống trong năm 2008 và nhìn vào dòng định danh hàng đầu trong đó và sao chép nó vào tệp giải pháp khác.

Tuy nhiên, tôi nghi ngờ rằng chúng giữ nguyên như vậy vì chúng tích hợp một số tính năng vào tệp giải pháp.

Bạn nên sử dụng giải pháp trống mới trong năm 2008 và sử dụng "Thêm dự án hiện tại" để nhập lại chúng. Miễn là bạn không có bất kỳ tùy chỉnh "giải pháp" tài liệu tham khảo rộng này sẽ làm việc (không có thư mục giải pháp, thiết lập máy chủ, vv).

Đây có lẽ là tuyến đường nhanh nhất và trực tiếp nhất.

+2

Đồng ý. Tạo một giải pháp VS08 trống và thêm tất cả các tệp csproj vào đó. Sau đó bạn đã xong. Các tệp csproj hoạt động tốt trong cả hai giải pháp. –

4

Giả sử giải pháp của bạn nằm dưới sự kiểm soát nguồn và việc di chuyển từ VS 2008 sang VS 2010 là thay đổi duy nhất trong lần kiểm tra đó, chỉ cần so sánh hai phiên bản và xem có gì thay đổi.

Sau đó thay đổi các dòng bị ảnh hưởng trở lại phiên bản VS 2008 và bạn nên làm tốt.

Không có quy trình tự động khi Microsoft xem đây là thao tác một chiều.

+0

đây là một bài viết đề cập đến các dòng: http://blogs.msdn.com/rextang/archive/2009/07/06/9819189.aspx. Tôi đã viết công cụ đơn giản cho mục đích này: http://code.google.com/p/vsprojconverter – jonny

3

Bạn có thể chỉnh sửa tệp .sln theo cách thủ công trong trình chỉnh sửa văn bản. Có trường có tên phiên bản, hoặc như vậy, chỉ cần thay đổi nó từ 10 đến 9.

+1

Có đây là cách đơn giản nhất. – Ravia

10

tôi đã thành công thay đổi 2 dòng đầu tiên từ:

Microsoft Visual Studio Solution File, Format Version 11.00 
# Visual Studio 2010 

để

Microsoft Visual Studio Solution File, Format Version 10.00 
# Visual Studio 2008 
+0

Cảm ơn. Nó hoạt động! –

+0

Không làm việc cho tôi, tôi đã sử dụng dự án C++ cuda – TripleS

0

như maZZoo nói , bạn phải thay thế các dòng đó trong .sln, nhưng nếu bạn kiểm tra bảng Output, bạn có thể có cảnh báo về việc sử dụng ToolsVersion = "4.0", bạn phải thay thế số đó trong .csproj tới:

<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
2

hãy thử như sau (tìm dòng đầu tiên và thay thế vào dòng thứ hai để chuyển đổi 2010 giải pháp cho năm 2008):

TargetFrameworkMoniker = ".NETFramework,Version=v2.0" 
TargetFramework = "3.5" 

# Visual Studio 10 
# Visual Studio 2008 

Microsoft Visual Studio Solution File, Format Version 11.00 
Microsoft Visual Studio Solution File, Format Version 10.00 

<Project ToolsVersion="4.0" 
<Project ToolsVersion="3.5" 

<ProductVersion>10.0.20506</ProductVersion> 
<ProductVersion>9.0.30729</ProductVersion> 

\VisualStudio\v10.0\ 
\VisualStudio\v9.0\ 

<Import Project="$(MSBuildToolsPath)\Workflow.Targets" /> 
<Import Project="$(MSBuildExtensionsPath)\Microsoft\Windows Workflow Foundation\v3.5\Workflow.Targets" /> 

này làm việc trên các giải pháp của tôi, bạn có thể thử để xem nếu nó phù hợp với trường hợp của bạn.

Các vấn đề liên quan