2010-11-05 33 views
8

Trước khi yêu cầu, tôi đọc các chủ đề thisthis. Không có sự giúp đỡ ở đó.Tham khảo các hội đồng khác nhau trong các cấu hình khác nhau

Tôi đang sử dụng Visual Studio 2003 (đây là nhiệm vụ của chủ nhân của tôi) nhưng tôi đoán câu trả lời cho các phiên bản sau của VS cũng có thể hữu ích.

Vì vậy, hãy tưởng tượng tôi có hai dự án .Net: A - thư viện lớp và B - là một ứng dụng. Trong BI, hãy bấm Thêm Tham chiếu, vào tab Dự án và chọn A. Trong trường hợp này, phiên bản gỡ lỗi của B sẽ tham chiếu phiên bản gỡ lỗi của A và phiên bản B sẽ sử dụng phiên bản phát hành A. hãy tưởng tượng rằng thay vì dự án AI chỉ có hai hội đồng - aD.dll và a.dll. Tôi không có dự án nào tạo ra chúng. Những gì tôi muốn làm là thực thi phiên bản Debug của tham chiếu B aD.dll, và phiên bản phát hành của B tham chiếu a.dll
Câu hỏi 1: Làm cách nào để thực hiện việc này?

Khi tôi muốn tham khảo một số dll, tôi đi đến add tham khảo ->Duyệt và duyệt dll của tôi. Nhưng tôi cần phải xác định không phải là đường dẫn đầy đủ, nhưng đường dẫn tương đối.
Câu hỏi 2: Làm cách nào để thực hiện việc này?

Đây là một trường hợp khẩn cấp, cảm ơn trước :)

Trả lời

14

Bạn không thể làm điều này thông qua IDE, nhưng bạn có thể làm điều đó bằng cách hack file csproj bằng tay:

Nếu bạn 've đã có một tham chiếu đến, nói, a.dll:

<Reference Include="a">...</Reference> 

... sau đó thử một cặp điều kiện như sau:

<Reference Condition="'$(Configuration)' == 'Release'" Include="a">...</Reference> 
<Reference Condition="'$(Configuration)' == 'Debug'" Include="aD">...</Reference> 

Edit: Dưới đây là một lời giải thích về những gì bạn có thể đặt bên trong một yếu tố <Reference>: http://msdn.microsoft.com/en-us/library/bb629388.aspx

+0

Thanks a lot. Và trong trường hợp này tôi có thể chỉ định đường dẫn tương đối như ** Include = "../../Assemblies/Debug/aD.dll"**? –

+0

'Include =' là tên của DLL (không có phần mở rộng), nhưng bạn có thể đặt những gì bạn thích bên trong phần tử ''. IDE nên đã cung cấp một ''. –

+0

Đã cứu tôi rất nhiều rắc rối! – Benoittr

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