1
我有這樣的獲取公共領域?
private struct Combinators
{
public const char DirectChild = '>';
public const char NextAdjacent = '+';
public const char NextSiblings = '~';
public const char Descendant = ' ';
}
我想使用反射來獲取在結構中的public const char
領域的所有值的列表(儘可能具體)定義的結構。我怎樣才能做到這一點?
你當然不是故意傳入'null'嗎?或者是因爲他們的常量?你可以使用'GetFields(BindingFlags.Public)'no做得更好?你能限制它到'char'字段嗎? – mpen 2010-10-10 00:08:52
@Mark,'BindingFlags.Public'是默認的,所以你不需要傳遞它。而且你總是爲'const'或'static'字段傳遞null(因爲參數指向一個沒有的實例*)。 – 2010-10-10 00:11:51
在'.GetFields()'和'.ToDictionary(...)'之間插入'.Where(x => x.FieldType == typeof(char))'應該將其限制爲字符。 – mgbowen 2010-10-10 00:13:23