ResourceManager.BaseName 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得 ResourceManager 搜尋資源的資源檔之根目錄名稱。
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 搜尋資源的資源檔之根目錄名稱。
範例
您可以編譯和執行下列公用程式來判斷內嵌 .resources 檔案的名稱。 這是主控台應用程式,可接受主要元件或附屬元件的名稱做為命令行參數。 它會顯示應提供為 baseName
或 ResourceManager(String, Assembly, Type) 建構函式參數的ResourceManager(String, Assembly)字串,讓資源管理員能夠正確識別資源。
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 會反映資源檔的完整命名空間名稱和根資源名稱,而不需要其文化特性或擴展名。 例如,如果應用程式的默認資源檔命名為 SampleApps.StringResources.resources
, BaseName 則屬性值為 「SampleApps.StringResources」。。 如果應用程式的默認資源檔命名 SampleApps.StringResources.en-US.resources
為 ,且內嵌在附屬元件中,屬性的值 BaseName 仍為 “SampleApps.StringResources”。
重要
BaseName從命令行編譯和內嵌的資源檔屬性值不會包含命名空間名稱,除非您在編譯檔案時明確包含命名空間名稱。 另一方面, BaseName 在Visual Studio環境中編譯並內嵌的資源文件屬性值通常包含預設命名空間名稱。
BaseName屬性值與實例具現化ResourceManager時傳遞至 ResourceManager(String, Assembly) 或 ResourceManager(String, Assembly, Type) 建構函式的字串相同。