C#의 PropertyInfo 클래스는 속성 이름, 데이터 유형, 액세스 한정자 등을 포함한 클래스의 속성 정보를 반영하는 데 사용됩니다. PropertyInfo 클래스를 사용하면 런타임 시 클래스의 속성 값을 동적으로 얻고 설정할 수 있습니다.
C#의 PropertyInfo 클래스는 속성 이름, 데이터 유형, 액세스 한정자 등을 포함한 클래스의 속성 정보를 반영하는 데 사용됩니다.
다음은 PropertyInfo 클래스의 주요 멤버입니다:
Name: 속성 이름을 가져오거나 설정합니다.
DeclaringType: 이 속성을 정의하는 클래스의 유형을 가져옵니다.
PropertyType: 속성의 데이터 유형을 가져옵니다.
IsStatic: 속성이 정적 속성인지 여부를 나타내는 값을 가져옵니다.
CanRead: 속성을 읽을 수 있는지 여부를 나타내는 값을 가져옵니다.
CanWrite: 속성이 쓰기 가능한지 여부를 나타내는 값을 가져옵니다.
GetValue(Object): 지정된 개체에 대한 이 속성의 값을 반환합니다.
SetValue(Object, Object): 지정된 개체에 대해 이 속성의 값을 설정합니다.
PropertyInfo 클래스를 사용하면 런타임 시 클래스의 속성 값을 동적으로 가져오고 설정할 수 있습니다. 예를 들어 속성 값은 다음과 같은 방법으로 얻을 수 있습니다.
PropertyInfo propertyInfo = typeof(Person).GetProperty("Name"); string name = (string)propertyInfo.GetValue(person);
위 코드에서는 typeof 연산자를 사용하여 Person 클래스의 Type 개체를 가져오고, GetProperty 메서드를 통해 Name 속성의 PropertyInfo 개체를 가져옵니다. 그런 다음 GetValue 메서드를 사용하여 person 개체의 Name 특성 값을 가져와 문자열 유형으로 캐스팅합니다.
또한 SetValue 메서드를 사용하여 속성 값을 설정할 수도 있습니다. 예:
PropertyInfo propertyInfo = typeof(Person).GetProperty("Age"); propertyInfo.SetValue(person, 18);
위 코드는 GetProperty 메서드를 사용하여 Age 특성의 PropertyInfo 개체를 가져오고 SetValue 메서드를 사용하여 Age를 설정합니다. person 객체의 속성 값을 18로 설정합니다.
위 내용은 C#의 PropertyInfo 클래스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!