0
나는 내 클래스 Car에서 상수에 대한 정보를 얻으려고하지만, 불행하게도 나는 단지 4 field (name, currentSpeed, maxSpeed, state) 만 얻는다. 필드 const를 어떻게 얻을 수 있습니까?Constant in MemberInfo
감사합니다.
public abstract class Car
{
protected string name;
protected short currentSpeed;
protected short maxSpeed;
protected EngineState state;
protected const int const = 1;
}
.................................................. .............
Type type = assembly.GetType("CarLibrary.Car");
MemberInfo[] members = type.GetMembers(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public);
foreach (MemberInfo element in members)
Console.WriteLine("{0,-15}: {1}", element.MemberType, element);
확인. 나는 썼다 : MemberInfo [] members = type.GetMembers (BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static); 아무 것도 발생하지 않았습니다. MemberInfo를 사용하고 상수를 얻을 수 있습니까? 감사합니다. – Makeda
아니요. 왜냐하면'FieldInfo : MemberInfo'는 구현시'MemberInfo'를 사용하고 싶을 때 이것을 할 수 있기 때문입니다. (FieldType으로 fi) .IsLiteral &&! (FieldType으로 FieldInfo로). var res = typeof (Car) .GetMembers (BindingFlags.Static | BindingFlags.FlattenHierarchy) .Where (o => o.MemberType == MemberTypes.Field) fi로 FieldInfo) .IsInitOnly) .ToList();' –