방법: ASP.NET 웹 사이트의 리소스 파일 만들기(Visual Studio)

업데이트: 2007년 11월

리소스 파일은 문자열과 다른 리소스(예: 이미지 파일 경로)를 포함할 수 있는 XML 파일입니다. 일반적으로 리소스 파일은 다른 언어로 번역해야 할 사용자 인터페이스 문자열을 저장하는 데 사용됩니다. 이는 웹 페이지를 번역할 각 언어에 대해 별도의 리소스 파일을 만들 수 있기 때문입니다.

전역 리소스 파일은 웹 사이트의 모든 페이지 또는 구성 요소에서 사용할 수 있습니다. 로컬 리소스 파일은 단일 웹 페이지, 사용자 정의 컨트롤 또는 마스터 페이지와 연결되고 해당 페이지에만 적용되는 리소스를 포함합니다. 자세한 내용은 ASP.NET 웹 페이지 리소스 개요를 참조하십시오.

Visual Web Developer에서 관리되는 리소스 편집기를 사용하여 전역 또는 로컬 리소스 파일을 만들 수 있습니다. 로컬 리소스 파일의 경우에는 디자이너를 사용하여 문화권에 중립적인 기본 리소스 파일을 웹 페이지에서 직접 생성할 수도 있습니다.

수동으로 리소스 만들기

리소스 파일을 수동으로 만들려면

  1. 다음 중 하나를 수행하여 웹 사이트에 리소스 파일을 저장할 폴더가 있는지 확인합니다.

    • 전역 리소스 파일을 만드는 경우 App_GlobalResources라는 폴더가 있어야 합니다. 이 폴더를 만들려면 솔루션 탐색기에서 웹 사이트 이름을 마우스 오른쪽 단추로 클릭하고 폴더 추가를 클릭한 다음 App_GlobalResources 폴더를 클릭합니다. 이러한 폴더는 응용 프로그램에 하나만 있을 수 있으며 응용 프로그램의 루트에 있어야 합니다.

    • 로컬 리소스 파일을 만드는 경우 App_LocalResources라는 폴더가 있어야 합니다. 이 폴더를 만들려면 솔루션 탐색기에서 웹 사이트 이름을 마우스 오른쪽 단추로 클릭하고 폴더 추가를 클릭한 다음 App_LocalResources 폴더를 클릭합니다. 이러한 폴더는 응용 프로그램에 여러 개 있을 수 있으며 응용 프로그램의 모든 수준에 있을 수 있습니다.

  2. 리소스 파일을 만들려면 App_GlobalResources 또는 App_LocalResources 폴더를 마우스 오른쪽 단추로 클릭한 다음 새 항목 추가를 클릭합니다.

    참고:

    전역 리소스 파일은 App_GlobalResources 폴더에 있어야 합니다. .resx 파일을 다른 폴더에 만들려고 하면 Visual Web Developer에서 이 폴더에 리소스 파일을 만들라는 메시지가 나타납니다.

  3. 새 항목 추가 대화 상자의 Visual Studio에 설치되어 있는 템플릿에서 어셈블리 리소스 파일을 클릭합니다.

  4. 이름 상자에 리소스 파일의 이름을 입력한 다음 추가를 클릭합니다.

    관리되는 리소스 편집기에 리소스 파일이 열립니다. 이 편집기에는 이름(키), 값 및 선택적으로 설명을 입력할 수 있는 모눈이 표시됩니다.

  5. 응용 프로그램에 필요한 각 리소스에 대해 키 이름과 값을 입력한 다음 파일을 저장합니다.

    참고:

    컨트롤은 리소스 문자열을 스트림된 이미지 파일로 읽을 수 없으므로 그래픽을 리소스 파일에 직접 포함하면 안 됩니다. 리소스 파일은 그래픽의 URL을 문자열로 저장하여 그래픽을 나타냅니다.

  6. 다른 언어에 대한 리소스 파일을 만들려면 솔루션 탐색기 또는 Windows 탐색기에서 파일을 복사한 후 다음 패턴 중 하나를 사용하여 파일 이름을 바꿉니다.

    • 전역 리소스 파일

      name.language.resx

      name.language-culture.resx

    • 로컬 리소스 파일

      pageOrControlName.extension.language.resx

      pageOrControlName.extension.language-culture.resx

    예를 들어 아랍어(이집트)로 번역하기 위해 WebResources.resx라는 전역 리소스 파일을 만드는 경우, 복사한 파일의 이름을 WebResources.ar-eg.resx로 지정합니다. 문화권을 지정하지 않고 스페인어로 번역하기 위해 관련 리소스 파일을 만들려면 복사한 파일의 이름을 WebResources.es.resx로 지정합니다. 로컬 리소스 파일의 경우 파일 이름은 페이지나 컨트롤의 이름(확장명 포함)과 언어 및 문화권 정보를 포함합니다.

  7. 복사한 파일을 연 다음 각 값을 번역하고 이름(키)은 그대로 둡니다.

  8. 사용할 각 추가 언어에 대해 6단계와 7단계를 반복합니다.

웹 페이지에서 리소스 만들기

다음 기능은 Visual Web Developer Express에서 사용할 수 없습니다.

ASP.NET 웹 페이지에서 로컬 리소스 파일을 생성하려면

  1. 리소스 파일을 만들 페이지를 엽니다.

  2. 디자인 뷰로 전환합니다.

  3. 도구 메뉴에서 로컬 리소스 생성을 클릭합니다.

    Visual Web Developer에서 App_LocalResources 폴더를 만듭니다(없는 경우). 그런 다음 현재 페이지에 대해 문화권에 중립적인 기본 리소스 파일을 만듭니다. 이 리소스 파일에는 지역화해야 하는 각 페이지 속성 또는 컨트롤 속성의 키/이름 쌍이 포함됩니다. 마지막으로 Visual Web Developer에서는 각 ASP.NET 웹 서버 컨트롤에 meta 특성을 추가하여 암시적 지역화를 사용하도록 컨트롤을 구성합니다. 암시적 지역화와 명시적 지역화에 대한 자세한 내용은 ASP.NET 웹 페이지 리소스 개요방법: 웹 서버 컨트롤에서 리소스를 사용하여 속성 값 설정(Visual Studio)을 참조하십시오.

  4. 응용 프로그램에 필요한 각 리소스에 대해 값을 입력한 다음 파일을 저장합니다.

    참고:

    컨트롤은 리소스 문자열을 스트림된 이미지 파일로 읽을 수 없으므로 그래픽을 리소스 파일에 직접 포함하면 안 됩니다. 리소스 파일은 그래픽의 URL을 문자열로 저장하여 그래픽을 나타냅니다.

  5. 최신 리소스 변경 내용이 표시되지 않으면 소스 뷰로 전환한 다음 다시 디자인 뷰로 전환하여 디자인 뷰를 새로 고칩니다.

  6. 위의 절차에서 6단계와 7단계를 수행하여 다른 언어에 대한 리소스 파일을 만듭니다.

Visual Web Developer에서 전역 리소스 파일을 생성하려면

  1. 솔루션 탐색기에서 웹 사이트의 이름을 마우스 오른쪽 단추로 클릭한 다음 새 항목 추가를 클릭한 다음 리소스 파일을 클릭합니다.

    이 파일을 App_GlobalResources 폴더에 저장할지 묻는 메시지가 나타나고 폴더를 만들 수 있는 옵션이 제공됩니다.

  2. 를 클릭합니다.

  3. 응용 프로그램에 필요한 각 리소스에 대해 값을 입력한 다음 파일을 저장합니다.

    참고:

    컨트롤은 리소스 문자열을 스트림된 이미지 파일로 읽을 수 없으므로 그래픽을 리소스 파일에 직접 포함하면 안 됩니다. 리소스 파일은 그래픽의 URL을 문자열로 저장하여 그래픽을 나타냅니다.

  4. 최신 리소스 변경 내용이 표시되지 않으면 소스 뷰로 전환한 다음 다시 디자인 뷰로 전환하여 디자인 뷰를 새로 고칩니다.

  5. 다른 언어에 대한 리소스 파일을 만들려면 솔루션 탐색기 또는 Windows 탐색기에서 파일을 복사한 후 다음 패턴 중 하나를 사용하여 파일 이름을 바꿉니다.

    name.language.resx

    name.language-culture.resx

    참고:

    리소스 파일에 이름을 지정할 때는 이름이 충돌할 수 있으므로 이름에 .aspx를 포함하지 마십시오. 예를 들어 Resource 폴더에는 resTestPage.resx 및 resTestPage.aspx.resx와 같은 이름의 파일을 두 개 포함할 수 없습니다. 이 경우 컴파일 시 파일 이름을 확인할 때 이름이 충돌하여 컴파일 타임 오류가 발생할 수 있습니다.

참고 항목

작업

연습: ASP.NET에서 지역화를 위해 리소스 사용

방법: 웹 서버 컨트롤에서 리소스를 사용하여 속성 값 설정(Visual Studio)

개념

ASP.NET 웹 페이지 리소스 개요