리소스에서 표시 이름 검색
현지화된 애플리케이션에서 개발자는 모델 속성에 대해 사용자 친화적인 레이블을 표시해야 하는 경우가 종종 있습니다. DisplayName 속성을 사용하면 정적 표시 이름을 지정할 수 있지만 이러한 이름을 리소스 파일과 같은 외부 소스에서 동적으로 검색해야 하는 시나리오가 있을 수 있습니다.
안타깝게도 DisplayName 속성만으로는 리소스에서 동적 값을 지정하는 기능. "속성 인수는 상수 표현식, 표현식 유형 또는 속성 매개변수 유형의 배열 생성 표현식이어야 합니다."라는 컴파일러 오류는 제공된 인수가 정적 값이어야 함을 나타냅니다.
해결 방법 .NET 4 및 MVC 3
MVC 3 및 .NET 4를 활용하는 애플리케이션의 경우 업데이트된 디스플레이 속성을 사용하여 솔루션이 존재합니다. System.ComponentModel.DataAnnotations 네임스페이스입니다. 이 속성은 현지화 활용 기능을 포함하여 이전 버전의 기능을 확장합니다.
이 속성을 활용하려면 다음과 같이 모델을 수정하세요.
public class MyModel { [Required] [Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))] public string name { get; set; } }
참고: 이 해결 방법을 사용하려면 리소스 파일이 '포함 리소스'로 표시되고 'ResXFileCodeGenerator' 사용자 지정 도구를 사용해야 합니다. 또한 App_GlobalResources 또는 App_LocalResources를 MVC와 함께 사용하면 안 됩니다.
위 내용은 .NET의 리소스 파일에서 표시 이름을 동적으로 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!