2011-11-02 33 views
132

Tôi có một dự án với hơn 500 Missing XML Comment cảnh báo. Tôi biết tôi có thể xóa tính năng Nhận xét XML hoặc dán đoạn trích chú thích trống ở mọi nơi, nhưng tôi muốn có một giải pháp chung để tôi có thể thực hiện một thay đổi để vô hiệu hóa tất cả cảnh báo thuộc loại này.Tắt Visual Studio Thiếu Cảnh báo Nhận xét XML

Những gì tôi chỉ là bây giờ được đặt

///<Summary> 
/// 
///</Summary> 

hoặc

#pragma warning disable 1591 

chỉ là tò mò nếu nó sẽ có thể.

+3

Câu hỏi thực tế là gì? Bạn có muốn biết một cách khác để vô hiệu hóa các cảnh báo được tạo khi các nhận xét XML bị thiếu không? Trong các thuộc tính của dự án, hãy chuyển sang tab "Xây dựng" và bỏ chọn "tệp tài liệu XML". Tuy nhiên, tôi đề nghị không ngăn chặn các cảnh báo nhưng để thêm tài liệu bị thiếu. – Gorgsenegger

+0

Điều đó hoàn toàn chính xác nhưng chỉ tò mò về cách chúng ta có thể giải quyết vấn đề này từ một nơi khi tôi mới làm quen với điều này. –

+0

Những câu hỏi liên quan có thể giúp: http://stackoverflow.com/questions/11444631/how-to-disable-a-particular-compiler-warning-for-a-particular-file http: //stackoverflow.com/questions/3630282/vs2010-autogenerated-files-and-xml-documentation – Mightymuke

Trả lời

217

Như đã đề xuất ở trên, nói chung tôi không nghĩ rằng những cảnh báo này sẽ bị bỏ qua (bị chặn). Nói tóm lại, những cách xung quanh cảnh báo sẽ được:

  • Suppress cảnh báo bằng cách thay đổi các dự án Properties>Build>Errors and warnings>Suppress warnings bằng cách nhập 1591
  • Thêm các thẻ tài liệu XML (GhostDoc có thể khá hữu ích cho đó)
  • Suppress cảnh báo thông qua tùy chọn biên dịch
  • Bỏ chọn "file tài liệu XML" hộp kiểm trong dự án Properties>Build>Output
  • Thêm #pragma warning disable 1591 ở phía trên cùng của tập tin tương ứng và #pragma warning restore 1591 ở dưới cùng
+112

Xin vui lòng, xin vui lòng không sử dụng GhostDoc. Nếu một bình luận có thể được suy ra từ tên phương thức nó có thể được suy ra tốt hơn bởi một con người. Điều này cho biết thêm giá trị bằng không. Thời gian đó sẽ tốt hơn để chúc mừng bản thân bằng một phương pháp được đặt tên tốt. – JRoughan

+18

Tôi phải không đồng ý, GhostDoc giúp tôi nhanh chóng thêm danh sách yêu cầu của paramaters và một thẻ trả về (nếu phương pháp không bị vô hiệu). Tôi sử dụng và thích nó, và tôi biết khá nhiều người khác cũng làm. Tuy nhiên, đúng là mô tả trong bản tóm tắt có thể cần một số chỉnh sửa, nhưng điều này được tính cho hầu hết các tính năng tự động trong các trường hợp như vậy. – Gorgsenegger

+19

Nếu tất cả những gì đã làm là thêm trình giữ chỗ, nó sẽ là một trình tiết kiệm thời gian tốt đẹp, nhưng số lượng mã nguồn mà tôi đã thấy nơi các nhà phát triển rời khỏi văn bản được tạo ra khiến chúng tôi nghĩ rằng chúng tôi không đủ trưởng thành để sử dụng nó. Bình luận là một (thường cần thiết) nạng cho mã đó không phải là tự tài liệu và bằng cách cung cấp các phím tắt công cụ này có một lợi ích ròng tiêu cực trên thế giới mã. – JRoughan

4

Đây có thể là một lời nhận xét nhưng tôi không thể làm cho nó phù hợp với những hạn chế:

Tôi rất thích vô hiệu hóa chúng chỉ cho các tham chiếu Reference.cs và WebService. Trên thực tế tôi đang sử dụng một macro để làm điều đó cho một tập tin. Chỉ cần mở tệp và thực thi macro này (Thử nghiệm trong VS2010):

Sub PragmaWarningDisableForOpenFile() 
    DTE.ActiveDocument.Selection.StartOfDocument() 
    DTE.ActiveDocument.Selection.NewLine() 
    DTE.ActiveDocument.Selection.LineUp() 
    DTE.ActiveDocument.Selection.Insert("#pragma warning disable 1591") 
    DTE.ActiveDocument.Selection.EndOfDocument() 
    DTE.ActiveDocument.Selection.NewLine() 
    DTE.ActiveDocument.Selection.Insert("#pragma warning restore 1591") 
    DTE.ActiveDocument.Save() 
End Sub 

Thực sự không có cách nào để thực hiện việc này một cách tự động? Bạn sẽ phải làm lại điều này mỗi khi mã được tạo tự động ghi đè tệp.

+2

Tôi nghĩ cảnh báo này không hiển thị cho nội dung được tạo tự động, có thể bạn sẽ phải kiểm tra cài đặt tương ứng trong thuộc tính của dự án. – Gorgsenegger

+1

Không, tất cả được hiển thị bằng cách chỉ bật cảnh báo XML-Comment. Và không có tùy chọn nào để vô hiệu hóa nó chỉ cho mã được tạo tự động. Cho phép khi bạn cần tái tạo mã. – Kjellski

+0

Thuộc tính dự án 'Phân tích mã', có một tùy chọn' Ngắt kết quả từ mã được tạo'. Phải chạy lại macro sau mỗi lần tái tạo mã không thực sự là giải pháp IMO. Nếu tùy chọn ở trên không hiệu quả với bạn, có lẽ trình tạo mã có thể được điều chỉnh để tự động thêm chỉ thị pragma thay thế? – Laoujin

6

Đi vào các thuộc tính dự án và bỏ chọn tùy chọn tạo tài liệu XML.

Uncheck XML documentation file

Biên dịch lại và cảnh báo sẽ biến mất.

+1

Đây là một cách tiếp cận tốt miễn là bạn không cần phải tạo các tài liệu XML và bạn không nhớ rằng các nhận xét XML sẽ không được xác nhận hợp lệ. – Keith

+0

Điều này không hoạt động nếu bạn muốn giữ cảnh báo từ các tệp không được tạo tự động. Loại bỏ tất cả các cảnh báo chỉ để loại bỏ một nhóm cảnh báo có vẻ hơi quá mức đối với tôi. Bên cạnh đó, ở hầu hết các công ty, thực tế phổ biến là tạo ra các nhận xét XML trong tất cả các tệp không chứa mã được tạo tự động. Ngoài ra, người dùng đã yêu cầu một giải pháp không đơn giản loại bỏ tính năng nhận xét XML, vì vậy điều này không trả lời được câu hỏi. – SubliemeSiem

33

Vô hiệu hóa cảnh báo: Vào trang thuộc tính dự án (Nhấp chuột phải vào dự án của bạn và chọn Properties từ menu ngữ cảnh) Đi tới tab Build enter image description here

Thêm từ 1591 tới những lời cảnh báo Suppress textbox enter image description here

+2

Hoạt động như một nét duyên dáng với các danh sách được phân tách bằng dấu phẩy: "S125, CS1591, S1172". Sau khi xây dựng các cuộc chiến đã biến mất. – AFD

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