Cách làm ReSharper đánh giá lại đánh dấu tham chiếu lắp ráp của nó


184

Tôi đang tạo Mẫu dự án lăng kính và mẫu hoạt động rất tốt. Nhưng sau khi tôi tạo một dự án với mẫu, một số tệp trông như thế này:

Tài liệu tham khảo xấu

Mặc dù xuất hiện, mọi thứ đều tốt.

Nếu tôi thực hiện Rebuild Tất cả tôi thấy rằng giải pháp được xây dựng không có lỗi:

Xây dựng lại

Nhưng việc xây dựng lại tất cả không thoát khỏi "lỗi" đang hiển thị trong cửa sổ soạn thảo. (Lưu ý rằng cửa sổ lỗi thực tế không hiển thị bất kỳ lỗi nào.)

Tôi có thể dọn dẹp, xây dựng lại, đóng và mở các tệp và nó sẽ không sửa lỗi tô sáng.

Tuy nhiên, nếu tôi đóng giải pháp và mở lại, tất cả đều ổn :

Hoạt động sau khi tải lại

Câu hỏi của tôi:

Lý tưởng nhất là sẽ có một cách để mẫu của tôi hoặc IWizard của tôi nói với ReSharper để tải lại các tham chiếu cho phần tô sáng.

Tôi biết tôi có thể tắt ReSharper và sau đó bật lại và điều đó sẽ khắc phục nó, nhưng tôi không muốn làm điều đó.

Có một lệnh ReSharper chỉ làm mới công cụ này?


Bạn đang sử dụng ReSharper?
John Saunders

@ JohnSaunders - vâng, 5.1
Vaccano

Tôi đã thấy ReSharper làm điều này, vì vậy nó có thể là lỗi ReSharper, không phải lỗi VS. Tôi mới thấy điều này với phiên bản 6.1.
John Saunders

@JohnSaunders - Tôi xác nhận rằng đây là sự cố ReSharper. Tôi đã chỉnh sửa câu hỏi của mình để nhắm mục tiêu lại cho ReSharper. Cám ơn đã chỉ tôi hướng đi đúng!
Núi lửa

Những phiên bản nào của Prism, WPF / SL / WinPhone bạn đang sử dụng trong dự án của mình?
Jura Gorohovsky

Câu trả lời:


216

Ngoại trừ việc cài đặt lại, cách duy nhất để xóa thành công bộ nhớ cache là xóa các tệp theo cách thủ công khỏi thư mục AppData của bạn.

Xóa thư mục giải pháp khiến bạn đau buồn ở các vị trí sau:

  • %LOCALAPPDATA%\JetBrains\ReSharper\v7.1\SolutionCaches\
  • %LOCALAPPDATA%\JetBrains\Transient\ReSharperPlatformVsXX\vXX\SolutionCaches\ cho các phiên bản mới hơn.

Lưu ý rằng số phiên bản trong đường dẫn có thể khác nhau tùy thuộc vào phiên bản ReSharper được cài đặt.

Số XXtrong vXXVsXXđại diện cho bất kỳ số nào, bởi vì có thể có nhiều thư mục lưu trữ bộ đệm giải pháp.


8
Đường dẫn này có thể khác nhau tùy thuộc vào cấu hình Caches của bạn. (Xem Chia sẻ lại> Tùy chọn> Chung)
Không tên Một

1
Đủ công bằng - nhưng nó chắc chắn sẽ khắc phục vấn đề bạn gặp phải (và không chỉ bạn ...)
Peter Munnings

2
Câu trả lời là đúng. Đóng tất cả các phiên bản phòng thu trực quan của bạn, xóa% LOCALAPPDATA% \ JetBrains \ ReSharper \ [ install_version ] \ SolutionCaches.
Houman

3
@Joel trong ReSharper 9, với sự ra đời của Nền tảng ReSharper, nó đã được chuyển đến %localappdata%\JetBrains\Transient\ReSharperPlatformVs12\v01\SolutionCaches(như @brgerner đề cập , bạn có thể muốn nhấp vào nút Clear Caches trước khi đi tuyến đường này)
bdukes

7
Bạn có thể sử dụng Resharper -> General -> Clear Caches để xóa bộ nhớ cache bất kể vị trí bộ đệm của bạn. Bạn sẽ cần khởi động lại Visual Studio sau khi xóa bộ nhớ cache
Christopher Haws

98

Hãy thử dỡ tải và sau đó tải lại dự án.

Để dỡ dự án, bấm chuột phải vào dự án trong trình khám phá giải pháp và chọn Unload Project. Sau đó, nhấp chuột phải vào dự án một lần nữa và chọn Reload Project.

Vấn đề thỉnh thoảng xảy ra với các phiên bản mới nhất của ReSharper, nhưng bản sửa lỗi dường như hoạt động cho mọi phiên bản.


Có vẻ như tải lại gây ra quét lại để quét lại. Điều này có vẻ dễ dàng với tôi hơn là săn tìm bộ nhớ cache trong trình thám hiểm tệp.
testpotype

69

Bạn có thể thử xóa bộ đệm ReSharper qua menu ReSharperTùy chọnMôi trường / Chung → nút Clear Caches.


1
Than ôi, nó vẫn không sửa được ... Mặc dù vậy, cảm ơn vì ý tưởng đó.
Núi lửa

23
Sau đó, bạn cần khởi động lại studio hình ảnh. Sau đó, nó sẽ làm việc.
Felix C

3
Không làm việc cho tôi, ngay cả sau khi khởi động lại studio hình ảnh. Cảm ơn tuy nhiên.
Matt

Đã xảy ra với tôi sau khi hạ cấp gói nuget sau đó nâng cấp lại. Sử dụng gợi ý này để sửa chữa.
Guillaume Perrot

Hoạt động tốt nhất nếu bạn đóng studio trực quan sau đó thực hiện msbuild yourSolution.sln / t: dọn dẹp sau đó dọn sạch tất cả các bộ đệm chia sẻ lại, lưu và sau đó mở lại giải pháp của bạn.
John-Philip

14

Điều này làm việc cho tôi. Không cần phải tải lại dự án. Bạn có thể làm điều này từ trong Visual Studio.

  1. Xóa bộ đệm ReSharper qua ReSharper , Tùy chọn , Chung , nhấp vào ' Xóa bộ nhớ cache '.

    Tùy chọn chia sẻ lại

    Chia sẻ lại bộ nhớ cache

  2. ReSharper , Windows , chọn ' Lỗi giải pháp '. Điều này sẽ khởi chạy cửa sổ Giải pháp lỗi. Ở đầu cửa sổ này, nhấp vào nút để ' Phân tích lại các tệp có lỗi / cảnh báo '.

    Chia sẻ lạiWindows

    Tập tin lại với lỗi


1
Hoạt động với R # 10.0.2, mà không phải khởi động lại VS.
Seb T.

1
Điều này làm việc cho tôi, mặc dù tôi đã phải khởi động lại VS
Rory McCrossan

6

Mở ReSharper - Tùy chọn - Môi trường - Chung , cuộn xuống truy cập Msbuild và chọn Lấy dữ liệu từ msbuild sau mỗi lần biên dịch .

Điều này làm việc với tôi, sử dụng ReSharper 10.0.1 với ReSharper Build.


Tôi cũng làm sạch các giải pháp và xây dựng lại nó. Sau đó, tôi có thể chuyển về truy cập Msbuild trước đó khi nó hoạt động
znn

5

Chuyển đến ReSharper → WindowsCửa sổ lỗi giải pháp và bạn sẽ có được cái nhìn tổng quan về các lỗi trong giải pháp của mình. Ở đó, bạn có thể nhấp vào nút Reanalyze Files With Errors.

Nếu bạn muốn, bạn có thể chỉ định một phím tắt cho điều này. Chuyển đến Công cụTùy chọnBàn phím và tìm kiếm "Reanalyze". Bạn có thể gán phím tắt cho 'ReSharper_ErrorsView_Reanalyze ALLFiles' hoặc 'ReSharper_ErrorsView_ReanalyzeFilesWithErrors'.


1
tôi đang đối mặt với vấn đề tương tự, và nó không khắc phục.
Tilak

Tôi chỉ mệt mỏi này quá. Nó không khắc phục được vấn đề. Resharper vẫn đánh dấu lỗi, nhưng tất cả được biên dịch tốt. Dỡ bỏ và tải lại dự án là cách giải quyết duy nhất tôi có thể tìm thấy. (Mặc dù tôi được bảo là nó đã được sửa trong phiên bản mới nhất của việc chia sẻ lại)
Vaccano

Rất hữu ích! Tôi đã có cùng một vấn đề với VS 2019 và Resharper 2019.3, nhưng thực tế nó KHÔNG phải là vấn đề. Việc các dự án xây dựng không cần thiết có nghĩa là Resharper sẽ không tìm thấy lỗi. Trong trường hợp của tôi, có một số lỗi trong một số tệp thử nghiệm xml trong dự án NUnit của tôi. Giải pháp này nhanh chóng tìm thấy các tập tin
Shelbypereira

3

Tôi có một vấn đề tương tự với các gói nuget và tôi đã tìm thấy một cách giải quyết kỳ lạ nhất: chọn tham chiếu trong danh sách tham chiếu dự án và nhấn 'F4'. Bằng cách nào đó xuất hiện cửa sổ thuộc tính gây ra chia sẻ lại để đánh giá lại các tài liệu tham khảo có sẵn ...


1
Tôi không có may mắn với tất cả các mẹo "xóa bộ nhớ cache". Sau đó, tôi đã thử điều này và nó gần như giúp đỡ. Cách giải quyết của tôi là: Tìm dự án có vấn đề - mở tham chiếu - chọn tham chiếu được đánh dấu là không xác định bởi R # - Nhấn F4 - thay đổi nội dung trong thuộc tính, như "sao chép cục bộ từ true sang false, sau đó trở về true"
Chrigl

Tôi đã có một sửa chữa tương tự. Tôi đã phải thực sự loại bỏ các tham chiếu từ dự án của tôi và thêm lại nó. Không có giải pháp nào khác làm việc cho tôi.
CodeHxr

2

Tôi không chắc đây là nguyên nhân gốc rễ, nhưng tôi phát hiện ra rằng, trong các tùy chọn ReSharper, "Sử dụng MsBuild" đã được kiểm tra và tôi đã nhận được tất cả các lỗi sai được báo cáo. Hãy thử kiểm tra "ReSharper-> Tùy chọn-> Chung" và xem trạng thái kiểm tra "Sử dụng MsBuild" ở trạng thái nào.


2

Chuyển đến ReSharper → Tùy chọnChung và nhấp Clear Caches. (Tôi có 8.2, vì vậy nếu bạn ở phiên bản khác, nó có thể ở nơi khác.)

Sau đó, bạn sẽ cần mở lại giải pháp của mình và ReSharper sẽ phân tích lại mọi thứ.


Làm việc cho tôi, cảm ơn bạn. Tôi đã có hàng tấn dự án trong giải pháp của mình và không muốn tải / tải lại từng cái một: p Không chắc chắn tại sao bạn lại có một downvote.
Karl Patrik Johansson

1

Chạy đoạn mã sau trong dấu nhắc lệnh. Sau đó, giải quyết vấn đề ReSharper ...

del /q/f/s %TEMP%\*

0

Điều duy nhất giúp tôi là: Unistall và hơn cả Cài đặt lại chia sẻ lại (Sửa chữa không hoạt động)

Visual Studio 2010 SP1, ReSharper 7.1.3000.2254


0

Đây là một vấn đề lạ, và vẫn còn sống và tốt trong phiên bản 8.2.3 (bản dựng 8.2.3000.5176).

Những gì dường như làm việc cho tôi trên cơ sở nhất quán là làm một giải pháp xây dựng lại.

Trong VS 2013: Xây dựng -> Giải pháp xây dựng lại


0

Nếu các giải pháp trên không hoạt động, bạn có thể thử đặt lại loại đầu ra của dự án. Điều này dường như khắc phục sự cố trên VS2015 Update 1 với ReSharper 10.1


0

Đối với tôi không có ở trên làm việc. Tôi đã phải cài đặt phiên bản Resharper mới hỗ trợ NET Core 2.0.


0

Resharper đã báo cáo một tài liệu tham khảo còn thiếu từ một dự án được bao gồm trong các tài liệu tham khảo. Sau khi thử các giải pháp khác ở đây, tôi đã vô hiệu hóa Resharper thông qua hướng dẫn câu trả lời này và tôi thấy rằng intellisense của Visual Studio vẫn báo cáo các lỗi tương tự.

Tại thời điểm này, tôi nhận ra có lẽ có điều gì đó không đúng với tệp dự án. Tôi nghi ngờ một tài liệu tham khảo đã bị hỏng một cách tinh tế trong quá trình hợp nhất. 1

Tôi đã xóa tài liệu tham khảo, nó đã phàn nàn rằng nó không thể tìm thấy và thêm lại nó. Các lỗi từ Visual Studio đã biến mất. Sau đó, tôi kích hoạt lại Resharper và nó không còn phàn nàn về các lỗi trong dự án của tôi nữa.


  1. Khi tôi kiểm tra xem những gì đã thay đổi trong tệp csproj, những gì tôi tìm thấy là một phần bổ sung </Compile>không có thẻ mở tương ứng. Vì vậy, nó thực sự là một lỗi hợp nhất.
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.