ResourceManager.BaseName 속성

정의

ResourceManager에서 리소스를 검색하는 리소스 파일의 루트 이름을 가져옵니다.Gets the root name of the resource files that the ResourceManager searches for resources.

public:
 virtual property System::String ^ BaseName { System::String ^ get(); };
public virtual string BaseName { get; }
member this.BaseName : string
Public Overridable ReadOnly Property BaseName As String

속성 값

ResourceManager에서 리소스를 검색하는 리소스 파일의 루트 이름입니다.The root name of the resource files that the ResourceManager searches for resources.

예제

컴파일하고 다음 유틸리티를 실행 하 여 포함 된.resources 파일의 이름을 확인할 수 있습니다.You can determine the names of embedded .resources files by compiling and running the following utility. 주 어셈블리 또는 위성 어셈블리는 명령줄 매개 변수로 이름을 허용 하는 콘솔 앱입니다.This is a console app that accepts the name of a main assembly or satellite assembly as a command-line parameter. 리소스 관리자가 리소스를 올바르게 식별할 수 있도록 ResourceManager(String, Assembly) 또는 ResourceManager(String, Assembly, Type) 생성자의 baseName 매개 변수로 제공 되어야 하는 문자열을 표시 합니다.It displays the strings that should be provided as the baseName parameter of the ResourceManager(String, Assembly) or ResourceManager(String, Assembly, Type) constructor so that the resource manager can correctly identify the resource.

using System;
using System.IO;
using System.Reflection;
using System.Resources;

public class Example
{
   public static void Main()
   {
      if (Environment.GetCommandLineArgs().Length == 1) { 
         Console.WriteLine("No filename.");
         return;
      }
      
      string filename = Environment.GetCommandLineArgs()[1].Trim();
      // Check whether the file exists.
      if (! File.Exists(filename)) {
         Console.WriteLine("{0} does not exist.", filename);
         return;
      }   
      
      // Try to load the assembly.
      Assembly assem = Assembly.LoadFrom(filename);
      Console.WriteLine("File: {0}", filename);
         
      // Enumerate the resource files.
      string[] resNames = assem.GetManifestResourceNames();
      if (resNames.Length == 0)
         Console.WriteLine("   No resources found.");

      foreach (var resName in resNames)
         Console.WriteLine("   Resource: {0}", resName.Replace(".resources", ""));

      Console.WriteLine();
   }
}
Imports System.IO
Imports System.Reflection
Imports System.Resources

Module Example
   Public Sub Main()
      If Environment.GetCommandLineArgs.Length = 1 Then 
         Console.WriteLine("No filename.")
         Exit Sub
      End If
      Dim filename As String = Environment.GetCommandLineArgs(1).Trim()
      ' Check whether the file exists.
      If Not File.Exists(filename) Then
         Console.WriteLine("{0} does not exist.", filename)
         Exit Sub
      End If   
      
      ' Try to load the assembly.
      Dim assem As Assembly = Assembly.LoadFrom(filename)
      Console.WriteLine("File: {0}", filename)
         
      ' Enumerate the resource files.
      Dim resNames() As String = assem.GetManifestResourceNames()
      If resNames.Length = 0 Then
         Console.WriteLine("   No resources found.")
      End If
      For Each resName In resNames
         Console.WriteLine("   Resource: {0}", resName.Replace(".resources", ""))
      Next
      Console.WriteLine()
   End Sub
End Module

설명

BaseName 속성은 문화권 또는 파일 이름 확장명이 없는 리소스 파일의 정규화 된 네임 스페이스 이름 및 루트 리소스 이름을 반영 합니다.The BaseName property reflects the fully qualified namespace name and the root resource name of a resource file, without its culture or file name extension. 예를 들어 응용 프로그램의 기본 리소스 파일 이름이 SampleApps.StringResources.resources인 경우 BaseName 속성의 값은 "SampleApps"입니다.For example, if an app's default resource file is named SampleApps.StringResources.resources, the value of the BaseName property is "SampleApps.StringResources". 응용 프로그램의 기본 리소스 파일 이름이 SampleApps.StringResources.en-US.resources이 고 위성 어셈블리에 포함 된 경우 BaseName 속성의 값은 여전히 "SampleApps"입니다.If an app's default resource file is named SampleApps.StringResources.en-US.resources and is embedded in a satellite assembly, the value of the BaseName property is still "SampleApps.StringResources".

중요

컴파일 및 명령줄에서 포함 된 리소스 파일의 BaseName 속성 값에는 파일을 컴파일할 때 명시적으로 포함 하지 않는 한 네임 스페이스 이름이 포함 되지 않습니다.The BaseName property value of a resource file that is compiled and embedded from the command line does not include a namespace name unless you explicitly include one when compiling the file. 반면에 Visual Studio 환경 내에서 컴파일되고 포함 된 리소스 파일의 BaseName 속성 값은 일반적으로 기본 네임 스페이스 이름을 포함 합니다.On the other hand, the BaseName property value of a resource file that is compiled and embedded within the Visual Studio environment typically does include the default namespace name.

BaseName 속성 값은 ResourceManager 인스턴스를 인스턴스화할 때 ResourceManager(String, Assembly) 또는 ResourceManager(String, Assembly, Type) 생성자에 전달 된 문자열과 같습니다.The BaseName property value is the same as the string passed to the ResourceManager(String, Assembly) or ResourceManager(String, Assembly, Type) constructor when instantiating a ResourceManager instance.

적용 대상