응용 프로그램의 리소스
거의 모든 프로덕션 수준 응용 프로그램은 리소스를 사용해야 합니다. 리소스는 응용 프로그램과 함께 논리적으로 배포되는 비실행 데이터이며, 응용 프로그램에서 오류 메시지로 표시되거나 사용자 인터페이스의 일부로 표시될 수 있습니다. 리소스는 문자열, 이미지, 지속된 개체 등을 포함하여 수많은 형식의 데이터를 포함할 수 있습니다. 리소스 파일에 데이터를 저장하면 전체 응용 프로그램을 다시 컴파일하지 않고 데이터를 변경할 수 있습니다. 지속된 개체를 리소스 파일에 쓰려면 해당 개체를 serialize할 수 있어야 합니다.
.NET Framework에서는 리소스 만들기 및 지역화를 포괄적으로 지원합니다. 또한 .NET Framework는 지역화된 리소스를 패키징하고 배포하는 간단한 모델을 지원합니다.
리소스에 대한 자세한 내용은 ASP.NET 웹 페이지 리소스 개요를 참조하십시오.
리소스 만들기 및 지역화
응용 프로그램의 리소스를 특정 문화권에 맞게 지역화할 수 있습니다. 리소스를 지역화하면 지역화된(변환된) 버전의 응용 프로그램을 빌드할 수 있습니다. 응용 프로그램에서는 CultureInfo.CurrentUICulture 속성 값을 기반으로 지역화된 해당 리소스를 로드합니다. 이 값은 응용 프로그램의 코드에서 명시적으로 설정되거나 공용 언어 런타임에서 로컬 컴퓨터의 현재 사용자에 대한 로캘을 기반으로 설정됩니다. CurrentUICulture를 설정하는 방법에 대한 자세한 내용은 특정 문화권의 리소스 찾기 및 사용과CurrentUICulture 속성 사용 을 참조하십시오.
리소스 패키징 및 배포
응용 프로그램의 리소스를 위성 어셈블리 에 배포할 수 있습니다. 정의에 따라, 위성 어셈블리는 리소스 파일만 포함하며 응용 프로그램 코드는 포함하지 않습니다. 위성 어셈블리 배포 모델을 사용하여 하나의 기본 어셈블리(주 어셈블리)와 여러 개의 위성 어셈블리를 가지는 응용 프로그램을 만듭니다. 응용 프로그램에서 지원하는 각 문화권에 대해 하나의 위성 어셈블리를 만들어야 합니다. 위성 어셈블리는 주 어셈블리의 일부가 아니므로 응용 프로그램의 주 어셈블리를 바꾸지 않고도 특정 문화권에 해당하는 리소스를 손쉽게 바꾸거나 업데이트할 수 있습니다.
응용 프로그램의 기본 리소스 어셈블리를 구성할 리소스를 결정할 때는 주의해야 합니다. 기본 리소스 어셈블리는 주 어셈블리의 일부이므로 이 어셈블리를 변경하려면 주 어셈블리를 바꾸어야 합니다. 기본 리소스를 제공하지 않으면 리소스 대체 프로세스에서 리소스를 찾을 때 예외가 throw됩니다. 잘 디자인된 응용 프로그램에서 리소스를 사용하면 예외가 throw되지 않습니다.