2013-05-06 30 views
12

Trong thiết lập với Visual Studio 2012 Update 2 và ReSharper 7.1.1, tệp này Annotations.cs được tạo khi tạo dự án mới. Tôi không thể tìm thấy bất kỳ bài viết mô tả lý do tại sao ReSharper làm điều đó và nếu nó có thể vô hiệu hóa điều này. Tôi nghĩ ReSharper là một sự nâng cao của IDE - và tôi không mong đợi ReSharper sẽ thêm các dự án của tôi vào sau lưng tôi.ReSharper tạo tệp này: Annotations.cs. Tại sao?

+1

Tệp này hỗ trợ chú thích Resharper (các thuộc tính như '[NotNull]' hoặc '[Pure]') cung cấp thêm thông tin về mã để giúp phân tích mã. Nếu bạn không cần nó, bạn có thể xóa nó, nó sẽ không gây ra bất kỳ vấn đề nào (miễn là bạn không sử dụng các chú thích này tất nhiên). –

+3

Tôi nhận được tệp này luôn nếu tôi triển khai Giao diện INotiyPropertyChanged. Nếu tôi tạo ra nó, thì tôi có intellisense trong PropertyChanged-Event – Tomtom

Trả lời

18

Tệp này chứa các định nghĩa cho chú thích mã ReSharper.

Kiểm tra mã amd nhiều tính năng ReSharper khác chủ yếu dựa vào phân tích heuristic của mã nguồn để phát hiện sự cố, đề xuất cải tiến có thể và giúp bạn theo những cách khác.

Tuy nhiên, phân tích heuristic không thể phát hiện mọi thứ. Ví dụ, nếu một phương thức được thiết kế để không bao giờ trả về null và các máy khách của nó được thiết kế tương ứng, thì không có phân tích heuristic nào có thể giúp tìm ra vấn đề có thể nếu ai đó thay đổi phương thức trả về null.

Trong trường hợp này và rất nhiều trường hợp khác, Khung chú thích là một trợ giúp tuyệt vời. Bằng cách sử dụng các thuộc tính khai báo trong khuôn khổ này, bạn có thể làm cho ReSharper phân tích mã theo cách bạn cần nó:

[NotNull] 
public object Foo() 
{ 
    return null; // Warning: Possible 'null' assignment 
} 

Đây là một ví dụ đơn giản nhất, có những thuộc tính hữu ích khác với trường hợp sử dụng phức tạp hơn trong khung chú thích . Bạn có thể tìm danh sách đầy đủ các thuộc tính này trong Tham chiếu.

Xem http://www.jetbrains.com/resharper/webhelp/Code_Analysis__Code_Annotations.html để biết thêm thông tin.

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