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 ファイルの名前を判断できます。 これは、メイン アセンブリまたはサテライト アセンブリの名前をコマンド ライン パラメーターとして指定するコンソール アプリです。 リソース マネージャーがリソースを正しく識別できるように、 または ResourceManager(String, Assembly, Type) コンストラクターのResourceManager(String, Assembly)パラメーターとしてbaseName
指定する必要がある文字列が表示されます。
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, Type) コンストラクターにResourceManager(String, Assembly)渡される文字列と同じです。
適用対象
.NET