Không thể đánh giá GetPathsOf ALLDirectoriesA Trên () sau khi cập nhật .Net Framework phiên bản (4.6.2 đến 4.7.2)


12

Một dự án tôi đang thực hiện đã được nâng cấp từ .NET Framework 4.6.2 lên 4.7.2. Khi xây dựng, trong một tệp không phải là mã của tôi, tôi gặp lỗi sau:

nhập mô tả hình ảnh ở đây

Tôi cũng thấy lỗi tương tự trong tab xây dựng thuộc tính dự án của tôi.

[2]

Tôi thua lỗ - Tôi đã tìm kiếm lỗi và sắp hết. Có ai gặp phải và / hoặc giải quyết điều này trước đây?

Câu trả lời:


22

Có vẻ như sau khi nâng cấp công cụ xây dựng của bạn được thay đổi từ MSBUILD thành Roslyn. Microsoft.Managed.Core.target là tệp mục tiêu Roslyn.

nếu bạn đã cài đặt các gói Nuget sau:

  • Microsoft.CodeDom.Providers.DotNetCompilerPl platform

  • Microsoft.Net.Compilers

Sau đó, có thể nó gây ra vấn đề. Nâng cấp Microsoft.CodeDom.Providers.DotNetCompilerPlatformlên 2.x và loại bỏ cái thứ hai. Điều đó sẽ khắc phục vấn đề.


nó thật tinh tế nhưng những gì bạn nói đã giúp tôi tìm ra nó - Vì bản cập nhật 4.7.2 đã được thực hiện khi tôi ra ngoài, tôi thực sự chỉ có 4.6.2 - và tôi đã để Visual Studio thực hiện tải xuống SDK, nhưng trong Quá trình này, nó phải chuyển giao cho người xây dựng dự án cho Roslyn trong khi chúng tôi sử dụng MSBuild (như bạn đã nói). Hoàn nguyên mọi thứ và tải nó với SDK 4.7.2 đã được cài đặt khiến vấn đề biến mất ...
Matt

Cảm ơn!! Trong trường hợp của tôi, tôi đã có Microsoft.Net.Compilers 2.0, có vẻ như phiên bản tha không có xung đột, nhưng sau khi nâng cấp gói Microsoft.Net.Compilers 3.4 đã được cài đặt, cơn ác mộng này bắt đầu. Tôi vừa gỡ cài đặt Microsoft.Net.Compilers và bây giờ dự án biên dịch ok :)
Jcis

tôi vô tình bị hạ bệ. Cần đợi một tiếng để sửa. vấn đề này liên quan đến VS 2017 v2019 quá btw.
smoore4

Loại bỏ Microsoft.Net.Compilers đã sửa nó! +1
Carlo Sanders

0

Microsoft.Net.CompilersGặp phải cùng một lỗi - sự cố tương thích giữa 2.x (vs2017) và 3.x (vs2019) - việc hạ cấp từ v3 xuống v2 đã khắc phục sự cố cụ thể trên các tác nhân xây dựng của chúng tôi chỉ có VS2017. v3 yêu cầu VS 2019 trở lên cho mỗi thông số phát hành phân tích roslyn .

Theo các lỗi liên quan Method 'System.String.GetPathsOfAllDirectoriesAbove' not found- VS2017 thậm chí sẽ không mở CSPROJ, một đầu mối về khả năng tương thích.

VS 2017 - Tùy chọn CSPROJ để cài đặt các tính năng thiếu cho Microsoft.Net.Compilersv3

nhập mô tả hình ảnh ở đây

VS 2017 - Cài đặt tính năng thiếu

nhập mô tả hình ảnh ở đây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.