2017-05-17 26 views
14

Tôi có ứng dụng lõi dotnet đang nhắm mục tiêu Microsoft.NETCore.App 1.1.2. Tôi đã tạo một dự án thử nghiệm để kiểm tra dự án đó nhưng khi xây dựng tôi nhận thấy cảnh báo này: enter image description hereVisual Studio 2017 không thể cập nhật gói Microsoft.NETCore.App ("Bị chặn bởi dự án")

Tôi mở NuGet Package Manager và thấy cảnh báo đó là chính xác, dự án đang được thử nghiệm có phiên bản Microsoft.NETCore khác. App: enter image description here enter image description here

vấn đề của tôi là Visual Studio không cho tôi cập nhật phiên bản đó, vì vậy tôi đang bối rối về cách giải quyết vấn đề này: enter image description here Lý tưởng nhất là tôi sẽ chỉ cần nhấp vào thả xuống và chọn bên phải phiên bản nhưng Visual Studio tuyên bố rằng nó không thể làm điều này vì "a ràng buộc về điều kiện trong dự án hoặc packages.config ". Tôi phải cập nhật gói đó như thế nào? "Visual constraints" là gì Visual Studio đề cập đến?

+0

Dường như dự án thử nghiệm đang chặn hạ cấp. Bạn đã thử nhấp chuột phải vào giải pháp và chọn quản lý gói nuget cho giải pháp và di chuyển tất cả các dự án sang phiên bản khác cùng một lúc? –

+0

Tôi đã không nghĩ về điều đó nhưng tôi chỉ thử nó và tôi nhận được rằng cùng một "Bị chặn bởi dự án" lỗi. Ngoài ra, dự án còn lại bị chặn chuyển khỏi 1.1.2. Tôi cũng đã cài đặt bản cập nhật mới nhất cho VS nhưng điều đó không giúp ích gì. – riqitang

Trả lời

18

Gói ngầm tham chiếu rằng không thể cập nhật thông tin đăng nhập Microsoft.NET.Sdk qua NuGet.

Nếu bạn di cư từ project.json, dự án với các 1.1.0 tài liệu tham khảo có khả năng chứa

<RuntimeFrameworkVersion>1.1.0</RuntimeFrameworkVersion> 

trong file csproj hoặc một mục như thế này (nếu bạn có thể sử dụng trình quản lý gói trước đó để thiết lập các phiên bản) :

<PackageReference Update="Microsoft.NETCore.App" Version="1.1.0" /> 

Xóa các mục nhập như trên và tất cả các gói sẽ tham chiếu 1.1.2 (hoặc bất kỳ SDK được cài đặt nào tự động xem là mới nhất). Nói chung, đặt RuntimeFrameworkVersion trong tất cả các dự án.

+1

Bạn đã đúng: Tôi đã mở tệp .csproj và xóa dòng < 1.1.0 '. VS vẫn không cho phép tôi thay đổi phiên bản theo cách thủ công nhưng ít nhất đó là phiên bản phù hợp ngay bây giờ (nó được cập nhật lên 1.1.2 như bạn đã nói) – riqitang

5

Tôi đã gặp sự cố tương tự khi cố gắng cài đặt Entityframework. Gói khác trong ứng dụng Web .NET Core 2. Để giải quyết vấn đề này, tôi đã buộc phải cài đặt thông qua Package Manager Console:

Install-Package Microsoft.NETCore.App -Version 2.0.5 

(2.0.5 là phiên bản mới nhất tại thời điểm đó)

Tôi hy vọng nó hữu ích. Hòa bình.

+1

Điều này phù hợp với tôi – GunWanderer

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