2011-07-05 35 views
5

thể trùng lặp:
How to suppress a StyleCop warning?Làm thế nào để ngoại lệ cho một số quy tắc StyleCop nhất định?

Hiện nay tôi đang thiết lập StyleCop cho các dự án của chúng tôi và tôi vấp vào một quy tắc của StyleCop. Quy tắc đặt tên SA1300:

SA1300: tên không gian tên bắt đầu bằng chữ hoa chữ thường: iCompanyName.

Vì vậy, công ty của tôi bắt đầu bằng chữ thường. Và nhiều tên sản phẩm khác nhau. Do đó, có khả năng thêm ngoại lệ cho quy tắc này trong tệp Settings.StyleCop không?

Tôi muốn ngăn chặn viết các quy tắc StyleCop tùy chỉnh bằng C#.

Cảm ơn bạn trước đã trả lời.

chỉnh sửa: Tôi nhận ra rằng tôi nên lưu ý rằng tôi thực sự không muốn tắt/chặn quy tắc StyleCop hoàn toàn. Tôi chỉ muốn thực hiện một số ngoại lệ về quy tắc đặt tên này.

+7

'công ty của tôi bắt đầu bằng chữ thường, tùy chọn đơn giản nhất là chuyển sang một công ty có tên tuân thủ phong cách. –

Trả lời

3

Nguyên tắc SA1300 không phải là cấu hình (ít nhất trong phiên bản 4.4). Nếu bạn không thích hành vi của nó và không muốn vô hiệu hóa hoàn toàn quy tắc, bạn sẽ cần sử dụng quy tắc tùy chỉnh thay thế. Bạn có thể tìm thấy một sản phẩm có sẵn từ bên thứ ba chẳng hạn như dự án StyleCop+. Nếu không, bạn đang bị kẹt khá nhiều khi lăn mình ...

+0

Đề xuất tốt để thử dự án StyleCop +. Tuy nhiên, không thực sự cung cấp chức năng để đặt ngoại lệ quy tắc đặt tên. Đoán tôi phải làm cho quy tắc của riêng tôi, nghĩ rằng nó nên có thể trong cấu hình. –

+0

Nếu bạn muốn quy tắc được cấu hình, bạn có thể thêm một yêu cầu tính năng tại http://stylecop.codeplex.com/workitem/list/basic. Cá nhân (đặc biệt là một người tiêu dùng API), tôi không nghĩ rằng không gian tên vỏ nên được phép đi chệch khỏi quy tắc này, nhưng ymmv ... –

+1

Hi Monty. Tôi là StyleCop + tác giả và, theo thiết kế của nó, nó cung cấp các quy tắc đặt tên cực kỳ linh hoạt. Các kiểu đặt tên khác nhau, tiền tố, ngoại lệ, chữ viết tắt, từ phức tạp ... đây là tất cả những gì StyleCop + được tạo ra. Trong trường hợp của bạn, bạn có thể ép buộc, ví dụ, tất cả các không gian tên được đặt tên là [PascalCase] ​​HOẶC "iYourCompany" (giống như một ngoại lệ). Hoặc, ví dụ: [PascalCase] ​​HOẶC i [PascalCase] ​​(nghĩa là cho phép bất kỳ tên nào bắt đầu bằng "i"). Những gì tôi có thể đồng ý, rằng nó có thể thiếu tài liệu - nhưng nó đang được thực hiện. Hãy liên hệ với tôi, tôi sẽ trả lời bất kỳ câu hỏi nào với niềm vui. Cảm ơn bạn! –

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