Tôi có ứng dụng web nhắm mục tiêu ban đầu 4.6.1. Ứng dụng web này tham chiếu thư viện lớp; lần lượt, điều này tham chiếu một thư viện lớp chuẩn Net 1.6.Lỗi tham chiếu Tiêu chuẩn thuần từ mạng 4.6.1/4.7
Thêm tham chiếu vào thư viện chuẩn Net là thay đổi mới nhất và dường như đã khiến ứng dụng bị hỏng: ứng dụng web hoạt động tốt cho đến khi thư viện Net Standard được giới thiệu; tại thời điểm đó, tôi bắt đầu gặp lỗi:
Could not load file or assembly 'System.Runtime, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
System.Runtime
được bao gồm trong gói NuGet trong ứng dụng web.
Nó có thể không liên quan, nhưng khi tôi nhìn vào thư mục gói; Tôi thấy System.Runtime.4.3.0 \ lib có các thư mục net45
và net462
, nhưng không phải 4.6.1 hoặc 4.7 (xem dưới đây để biết tại sao tôi mong đợi điều này).
Một số điều mà tôi đã cố gắng mà vẫn chưa làm việc:
- Mặc dù thấy here rằng 4.6.1 hỗ trợ Net Std 1.6, tôi đã cố gắng nâng cấp lên 4.7, nhưng vô ích.
- Đã cố gắng thiết lập chuyển hướng lắp ráp trong web.config. Điều này thay đổi lỗi một chút để nói rằng nó đang tìm kiếm 4.0.0.0 và sau đó lại trực tiếp đá vào, nhưng nó về cơ bản là cùng một lỗi.
- Đã cố gắng xóa thư mục gói, để xem liệu tôi có thể bắt buộc làm mới (cũng đã cố gắng Cập nhật gói trên System.Runtime) hay không.
- Khi tìm kiếm trên web, tôi đã tìm thấy một số vấn đề tương tự; một trên GitHub (mà tôi dường như không thể di dời) ngụ ý rằng bản cập nhật cho VS2017 sẽ khắc phục được vấn đề.
Có đủ nội dung gần đây trên web khiến tôi nghĩ rằng tôi không phải là người duy nhất trải nghiệm điều này; mặc dù tôi không tìm thấy bất kỳ lời giải thích nào về nguyên nhân có thể là gì. Bất cứ ai có thể cung cấp một lời giải thích như những gì có thể gây ra điều này, hoặc bất kỳ bước chẩn đoán mà tôi có thể sử dụng?
Bạn đang sử dụng phiên bản studio trực quan nào? –
Visual Studio 2017 (15.4.1) –
Có thể bạn có thể tạo dự án tối thiểu để tái tạo và xuất bản nó ở đâu đó? – Evk