> 백엔드 개발 > C++ > C#에서 속성 이름을 문자열로 검색하는 방법은 무엇입니까?

C#에서 속성 이름을 문자열로 검색하는 방법은 무엇입니까?

Patricia Arquette
풀어 주다: 2025-01-12 07:54:41
원래의
623명이 탐색했습니다.

How to Retrieve a Property Name as a String in C#?

C#에서 속성 이름에 문자열로 액세스

C# 프로그래밍에서는 특히 리플렉션을 사용할 때 속성 이름을 문자열로 가져와야 하는 경우가 많습니다. 이는 동적 메서드 호출이나 실수로 속성 이름을 변경하는 것을 방지하는 등의 작업에 매우 유용합니다.

nameof 연산자 활용(C# 6.0 이상)

C# 6.0부터 nameof 연산자는 간단하고 효율적인 솔루션을 제공합니다. nameof(SomeProperty) 표현식은 컴파일 타임에 "SomeProperty" 문자열을 직접 생성합니다.

일반 속성 이름 검색 방법

C# 6.0 이전 버전의 경우 일반 메서드가 해결 방법을 제공합니다.

<code class="language-csharp">public static string GetPropertyName<T>(Expression<Func<T>> propertyLambda)
{
    var me = propertyLambda.Body as MemberExpression;
    if (me == null)
    {
        throw new ArgumentException("Invalid lambda expression");
    }
    return me.Member.Name;
}</code>
로그인 후 복사

이 메서드는 속성을 참조하는 람다 식을 받아들이고 해당 이름을 반환합니다.

실습

GetPropertyName 방법을 활용하는 방법은 다음과 같습니다.

<code class="language-csharp">// For a static property:
string propertyName = GetPropertyName(() => SomeClass.SomeProperty);

// For an instance property:
string propertyName = GetPropertyName(() => someObject.SomeProperty);</code>
로그인 후 복사

요약

최신 nameof 연산자를 사용하든 GetPropertyName 메서드를 사용하든 관계없이 속성 이름을 문자열로 검색하는 것이 단순화되어 리플렉션 및 리팩토링을 처리할 때 코드 유지 관리성과 견고성이 향상됩니다.

위 내용은 C#에서 속성 이름을 문자열로 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿