だから私は私のから取得する必要がありList<string>
ますenum
これが私がこれまでに行ったことです:
列挙定義
[Flags]
public enum ContractorType
{
[Description("Recipient")]
RECIPIENT = 1,
[Description("Deliver")]
DELIVER = 2,
[Description("Recipient / Deliver")]
RECIPIENT_DELIVER = 4
}
必要なことを行うためのメソッドを持つ HelperClass:
public static class EnumUtils
{
public static IEnumerable<string> GetDescrptions(Type enumerator)
{
FieldInfo[] fi = enumerator.GetFields();
List<DescriptionAttribute> attributes = new List<DescriptionAttribute>();
foreach (var i in fi)
{
try
{
yield return attributes.Add(((DescriptionAttribute[])i.GetCustomAttributes(
typeof(DescriptionAttribute),
false))[0]);
}
catch { }
}
return new List<string>{"empty"};
}
}
今、yield
私が大切にしている行で、NullReferenceException
. 私は何か見落としてますか?構文は私には問題ないように見えますが、何か見落としているのでしょうか?
編集: ここでは .net Framework 4.0 を使用しています。