Tôi đang làm việc trên một dự án nhắm mục tiêu .NET 4.0 và bây giờ tôi cần tham khảo một dll của bên thứ ba được xây dựng nhắm mục tiêu .NET 4.5. Có vẻ như studio hình ảnh không chấp nhận điều đó? Tại sao? VS cho tôi thấy rằng tên dll không tồn tại trong ngữ cảnh hiện tại.Tại sao dự án 4.0 không thể tham chiếu đến một phiên bản 4.5?
Trả lời
Vì bạn đang tham chiếu đến phiên bản cao hơn. Microsoft có thể tương thích ngược, nhưng không tương thích với "tương lai". Bạn cần phải chuyển đổi toàn bộ dự án của bạn sang vesion cao hơn, để có thể sử dụng nhị phân đó.
Không biết tecnology bạn đang nói về chính xác, nhưng nếu đó asp.net
, hãy xem xét rằng trong vNext bạn có thể triển khai phiên bản của riêng bạn của đám mây clr trên máy chủ. Vì vậy, bạn có thể có 2 phiên bản ứng dụng của bạn, một phiên bản nhắm mục tiêu 4.5
, khác 4.0
.
Introducing vNext. Lặp lại, nếu điều này liên quan đến bạn.
Nhắm mục tiêu dự án .NET 4.0 có thể chạy trên thời gian chạy 4.0. Nhắm mục tiêu DLL .NET 4.5 không thể.
Nếu được phép; bạn sẽ có thể xây dựng các dự án xuất hiện để làm việc trong 4.0 và không thành công khi họ cố gắng tải 4.5 thành phần.
Bạn có thể tham chiếu mọi thứ theo cách khác; như một DLL 4.0 có thể được nạp trong thời gian chạy 4.5.
Bạn sẽ cần phải yêu cầu phiên bản 4.0 của DLL từ bên thứ ba; hoặc mục tiêu .NET 4.5.
Miền ứng dụng sẽ chạy trong thời gian chạy 4.0 và do đó không thể tham chiếu phiên bản dotnet mới hơn, chỉ ngược lại là đúng.
4.5 là thời gian chạy mạng khác nhau do đó không thể tải 4.5 trong phiên bản cũ hơn.
Bạn phải nhớ rằng thời gian chạy sẽ cần phải diễn giải Ngôn ngữ trung gian (IL) thành mã máy. Nếu IL được tạo ra trên 4.5 một thời gian chạy 4.0 sẽ không có ý tưởng làm thế nào để giải thích nó.
Tạo ứng dụng bảng điều khiển ở 4.5 và sau đó thực thi cmd từ 4.0 để nhận dữ liệu bạn cần từ 4.5, có thể là giải pháp nhanh. Không ý tưởng nhưng nó thực hiện công việc :)
- 1. Tham khảo khung lưới. 4.5.1 trong một dự án 4.0
- 2. Hạ cấp dự án MVC từ Khung 4.5 sang 4.0
- 3. Tại sao việc thêm tham chiếu vào nhắm mục tiêu dự án .NET Framework 4.0 không thành công?
- 4. Tham chiếu đến mã C# từ nhiều dự án
- 5. Điều gì sẽ xảy ra khi .NET 4.0 tham chiếu đến một phiên bản .NET 2.0?
- 6. Tại sao tệp LocalCopy của tôi không được nội địa hóa từ một dự án tham chiếu trong một dự án tham chiếu?
- 7. Tôi không thể thêm tham chiếu đến system.windows.controls không gian tên trong dự án thư viện
- 8. Làm cách nào để biên dịch ứng dụng .NET 4.5 có tham chiếu đến phiên bản .NET 4.5.2?
- 9. Tại sao nuget không bao gồm dự án được tham chiếu khi đóng gói?
- 10. Cài đặt .NET 4.5 REALLY có thay thế các phiên bản .NET 4.0 không?
- 11. Visual Studio 2012: Dự án không thể tham chiếu
- 12. DLL được tham chiếu không được sao chép để tham chiếu dự án
- 13. Tại sao MSTest không sao chép các thư viện dự án được tham chiếu?
- 14. Các lớp dự án EJB được tham chiếu không được tìm thấy trong dự án Web (tham chiếu)
- 15. Tại sao VS 2015 cần tham chiếu đến System.Data.Entity nhưng VS 2013 thì không?
- 16. Tại sao vector <bool> :: tham chiếu không trả về tham chiếu đến bool?
- 17. Tại sao truyền qua tham chiếu liên quan đến một hàm tạo bản sao?
- 18. Tại sao trả về một tham chiếu đến một chuỗi ký tự một tham chiếu đến một tạm thời?
- 19. Tại sao tôi không thể biên dịch một tệp tham chiếu đến jquery.d.ts?
- 20. Tại sao không thể NSTextView cho một tham chiếu yếu?
- 21. Cách tham chiếu đến nhiều phiên bản assembly
- 22. Tại sao các tham chiếu không phải const tham chiếu đến bitfield bị cấm?
- 23. Tại sao tôi không thể tham chiếu System.ComponentModel.DataAnnotations?
- 24. Không để giàn giáo về dự án trong đó có một tham chiếu đến EDMX
- 25. Cách tham chiếu một dự án Java khác trong Eclipse
- 26. không thể thêm một tham chiếu NET
- 27. Tệp dự án có chứa ToolsVersion = "4.0", không được hỗ trợ bởi phiên bản MSBuild
- 28. Tại sao có tham chiếu đã khôi phục trong tệp dự án xcode của tôi?
- 29. Bản sao năm 2015 để xuất bản tham chiếu GAC của tham chiếu dự án bất kể cài đặt địa phương sao chép
- 30. Có thể cho dự án C# sử dụng nhiều phiên bản .NET không?
Bạn có thể sử dụng một trong các cơ chế IPC của Windows để giao tiếp giữa các quá trình. (Ví dụ: tôi thích 'IpcServerChannel'). – xmedeko