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 文件的名称。 这是一个控制台应用,它接受main程序集或附属程序集的名称作为命令行参数。 它显示应作为 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(String, Assembly, Type) 构造函数的ResourceManager(String, Assembly)ResourceManager字符串相同。