6

Tôi đã neeed để tạo nhiều phiên bản dự án của mình bằng cách sử dụng cấu hình giống như chúng tôi làm với #define, #if, #endif.Tạo nhiều phiên bản của một dự án trong Visual Studio bằng cách sử dụng Build Configurations

Mặt trái của việc sử dụng các chỉ thị tiền xử lý này là tôi cần xác định các biểu tượng trong hầu hết mọi tệp của dự án nhưng tôi muốn xử lý điều này bằng các cấu hình xây dựng của mình.

Tôi thậm chí không chắc chắn nếu Cấu hình xây dựng sẽ giúp tôi thực hiện việc này.

Những gì tôi muốn là nếu tôi có thể tạo một cấu hình với cái tên "Phát triển" và khác với tên "QA", mã của tôi sẽ như thế nào:

if #Development or if $QA 

Vui lòng hướng dẫn cho tôi để đạt được này.

Trả lời

9

Trình quản lý cấu hình tồn tại vì lý do này.

  • Đến Manager Cấu hình và tạo ra một mới Cấu hình sao chép từ các cấu hình DEBUG được định nghĩa trước
  • Đặt tên PHÁT TRIỂN cấu hình và áp dụng cho tất cả các dự án
  • Chọn như Active cấu hình cấu hình PHÁT TRIỂN (nên đã trở thành hoạt động một)
  • Chuyển đến trang thuộc tính của từng dự án yêu cầu #if DEVELOPMENT biên dịch có điều kiện và chèn biểu tượng PHÁT TRIỂN trong hộp văn bản đầu tiên của tab BUILD

Bây giờ mỗi dự án của bạn có thể sử dụng PHÁT TRIỂN # nếu Preprocessor chỉ

Nếu bạn cần điều này cũng cho CHÍ lặp lại các bước trên nhưng sao chép từ cấu hình CHÍ được xác định trước và đưa ra một NAME khác

Bây giờ chuyển đổi từ một cấu hình có hoặc không có biểu tượng PHÁT TRIỂN được xác định có thể được thực hiện trực tiếp từ Công cụ kết hợp Cấu hình Giải pháp có trong Thanh công cụ Chuẩn của Visual Studio mà không cần chỉnh sửa từng dự án.

Bạn cũng có thể xem MSDN bài viết How to: Create and Edit Configurations

+0

Cảm ơn Steve, tại sao tôi cần phải sao chép cấu hình của mình từ các cấu hình được xác định trước – MegaMind

+0

Do cấu hình DEBUG chứa các cài đặt cần thiết trong phiên DEBUG , vì vậy đối với cấu hình RELEASE (ví dụ: biểu tượng DEBUG & TRACE). Nếu bạn bắt đầu từ đầu bạn có nguy cơ mất chức năng được cung cấp bởi các biểu tượng mất tích – Steve

+0

Tôi không chắc chắn về bước thứ 3, vui lòng làm cho nó rõ ràng hơn. Tôi không thể tìm thấy tab COMPILE trong thuộc tính dự án – MegaMind

0

Ngoài giải pháp Michael Freidgeim's bạn có thể sử dụng thuộc tính conditional cho các hoạt động trung tâm initalisation hoặc các chức năng khoảng trống khác:

[Conditional("DEVELOPMENT")] 
public static void InitDemo() 
{ 
     Models.LogFile.ErrorLog("This is a Development Version!"); 
     // init settings 
} 

Tìm thấy ở đây: http://msdn.microsoft.com/de-de/library/4xssyw96%28v=vs.80%29.aspx

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