2016-04-14 7 views
0
public enum EnumValues 
{ 
    Val1, 
    Val2, 
    Val3 
} 

... 

public Foo() 
{ 
    var valueList = Enum.GetNames(typeof(EnumValues)).ToList(); 
    var value = EnumValues.Val1; 
    // some userinteraction here with valueList and value... 
    ... 
    return value; 
} 

を生成します。Resharper-Warning UnusedMember Val2およびVal3で「タイプまたはメンバは使用されません」。 「disable'ノイズなしReSharperの列挙型に間違っている

public enum EnumValues 
{ 
    Val1, 
    // ReSharper disable once UnusedMember.Global 
    Val2, 
    // ReSharper disable once UnusedMember.Global 
    Val3 
} 

任意のアイデアはどのように修正する:

ソリューションは、ファイルまたはラインベースReSharperの禁止を追加するだろうか?

+0

せずに動作するはず

public enum EnumValues { // ReSharper disable UnusedMember.Global Val1, Val2, Val3 // ReSharper restire UnusedMember.Global } 

が、ここでは期待通りに機能が働き、それはdoesnの反射の使用を扱いません。 –

+0

Enum.GetNamesは実際にリフレクションを使用しますか? – MHolzmayr

+1

はい([参照](http://referencesource.microsoft.com/#mscorlib/system/type.cs,d5cd3cb0c6c2b6c1))、これは 'typeof'を使用したときに期待されることです –

答えて

0

次を使用します。あなたは `[UsedImplicitly(ImplicitUseTargetFlags.WithMembers)]`属性を使用することができます。これは問題