Freigeben über


ResourceManager.BaseName Eigenschaft

Definition

Ruft den Stammnamen der Ressourcendateien ab, die der ResourceManager nach Ressourcen durchsucht.

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

Eigenschaftswert

Der Stammname der Ressourcendateien, die der ResourceManager nach Ressourcen durchsucht.

Beispiele

Sie können die Namen eingebetteter RESSOURCENdateien ermitteln, indem Sie das folgende Hilfsprogramm kompilieren und ausführen. Dies ist eine Konsolen-App, die den Namen einer Standard- oder Satellitenassembly als Befehlszeilenparameter akzeptiert. Es zeigt die Zeichenfolgen an, die baseName als Parameter des ResourceManager(String, Assembly) Konstruktors oder ResourceManager(String, Assembly, Type) angegeben werden sollen, damit der Ressourcen-Manager die Ressource ordnungsgemäß identifizieren kann.

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

Hinweise

Die BaseName -Eigenschaft gibt den vollqualifizierten Namespacenamen und den Stammressourcennamen einer Ressourcendatei ohne ihre Kultur oder Dateinamenerweiterung wider. Wenn beispielsweise die Standardressourcendatei einer App den Namen hat SampleApps.StringResources.resources, ist der Wert der BaseName Eigenschaft "SampleApps.StringResources". Wenn die Standardressourcendatei einer App den Namen hat SampleApps.StringResources.en-US.resources und in eine Satellitenassembly eingebettet ist, lautet der Wert der BaseName Eigenschaft weiterhin "SampleApps.StringResources".

Wichtig

Der BaseName Eigenschaftswert einer Ressourcendatei, die über die Befehlszeile kompiliert und eingebettet wird, enthält keinen Namespacenamen, es sei denn, Sie schließen beim Kompilieren der Datei explizit einen ein. Andererseits enthält der BaseName Eigenschaftswert einer Ressourcendatei, die kompiliert und in die Visual Studio-Umgebung eingebettet ist, in der Regel den Standardnamespacenamen.

Der BaseName Eigenschaftswert entspricht der Zeichenfolge, die beim Instanziieren eines ResourceManager instance an den ResourceManager(String, Assembly) Konstruktor oder ResourceManager(String, Assembly, Type) übergeben wird.

Gilt für: