Tôi đã sử dụng câu trả lời của Xavier khá nhiều. Tôi muốn thêm rằng việc giới hạn phiên bản gói trong phạm vi được chỉ định là dễ dàng và hữu ích trong các phiên bản mới nhất của NuGet.
Ví dụ: nếu bạn không bao giờ muốn Newtonsoft.Json
được cập nhật phiên bản trước 3.x.x
trong dự án của mình, hãy thay đổi thành package
phần tương ứng trong packages.config
tệp của bạn thành như sau:
<package id="Newtonsoft.Json" version="3.5.8" allowedVersions="[3.0, 4.0)" targetFramework="net40" />
Chú ý allowedVersions
thuộc tính. Điều này sẽ giới hạn phiên bản của gói đó ở các phiên bản giữa 3.0
( bao gồm ) và 4.0
( độc quyền ). Sau đó, khi bạn thực hiện Update-Package
toàn bộ giải pháp, bạn không cần phải lo lắng về việc gói cụ thể đó được cập nhật phiên bản trước 3.x.x
.
Các tài liệu cho chức năng này là ở đây .