2

次のリソース ファイルを含む ASP.Net Web サイト "MyApp" があります。

  1. WebResources.resx
  2. WebResources.es.resx

Web サイトは、これらのリソース ファイルにアクセスするライブラリ プロジェクト "MyLib" を参照しています。これが私が試みているコードです:

var rm = new ResourceManager("MyApp", Assembly.GetExecutingAssembly());
subject = rm.GetString("HelloMessage"); //always string.empty

問題は、実行中のアセンブリが常に「MyApp」ではなく「MyLib」であることです。ライブラリ プロジェクトから Web サイト プロジェクトに埋め込まれたリソース ファイルにアクセスすることはできますか?

助けてくれてありがとう - キース

4

1 に答える 1

0

var res= HttpContext.GetGlobalResourceObject(resourceFile, resourceKey);

resourceFile をリソース ファイル名 (.resx なし) に置き換えます。

resourceKey をキー名に置き換えます。

public static string GetResourceString(string resourceFile, string resourceKey)
{
 if (HttpContext.Current == null)
     return resourceKey;
 var res = HttpContext.GetGlobalResourceObject(resourceFile, resourceKey);
 if (res == null)
 {
     // Log missing key here
     // ....
     res = resourceKey;
 }
 return res;
}
于 2011-02-05T22:37:52.870 に答える