2013-02-14 28 views
5

Tôi có những enums:Tại sao Resharper nghĩ rằng những enums này không bao giờ được sử dụng?

private enum FontSizeType 
    { 
     XSmall, //9 
     Small, //12 
     Medium, //18 
     Large, //24 
     XLarge, //36 
     XXLarge //47 
    } 

    private enum AlignOptions 
    { 
     Left, 
     Center, 
     Right 
    } 

    private enum ValueType 
    { 
     Text, 
     Barcode 
    } 

Và kiểm tra Resharper của nói với tôi về tất cả chúng rằng "thành viên Enum 'XSmall' [vv] không bao giờ được sử dụng"

Tuy nhiên, tôi đang sử dụng chúng trong combo của tôi hộp, như vậy:

comboBoxType1.DataSource = Enum.GetNames(typeof(ValueType)); 

... vậy tại sao chia sẻ lại bị lừa? Hoặc là nó?

+2

Resharper không "nhìn thấy" một cách sử dụng trực tiếp của 'FontSizeType.XSmall' (vv ...) như bạn đang databinding các _whole_ enum. – Oded

Trả lời

6

ReSharper không phát hiện các tập quán ngầm. Bạn có thể sử dụng [UsedImplicitly] để nói rằng thành viên loại của bạn được sử dụng ngầm, và sau đó nó sẽ ngừng phàn nàn.

Để sử dụng UsedImplicitlyAttribute trong mã của bạn, bạn nên bao gồm tham chiếu đến JetBrains.Annotations.dll hoặc bao gồm một số mã nguồn được sao chép trong dự án của bạn, xem http://www.jetbrains.com/resharper/webhelp/Code_Analysis__Annotations_in_Source_Code.html để biết chi tiết.

Bạn nên thêm [UsedImplicitly] vào mỗi giá trị enum.

+0

Cố gắng này: [UsedImplicitly] tin enum ValueType { Text, mã vạch } ... tôi nhận được, "Loại hoặc namespace tên 'UsedImplicitlyAttribute' không thể tìm được (là bạn thiếu một chỉ thị sử dụng hoặc tham khảo lắp ráp?) " –

+0

@ClayShannon vui lòng xem câu trả lời cập nhật. –

+0

Cảm ơn, nhưng thay vì ngớ ngẩn nguồn của tôi theo cách đó, tôi sẽ chỉ "sống chung với" sự vẫy tay của Resharper trong trường hợp này. –

2

Bạn có thể cũng vô hiệu hóa các khiếu nại riêng của mình bằng cách sử dụng chỉ thị này: [SuppressMessage("ReSharper", "UnusedMember.Global")] public enum ComplianceStatus { Notcompliant, Unknown, Warning, Compliant, Pendingrestart, Pendinglogoff }

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