MSDN で説明されているようにローカライズした Windows 8 アプリがあります。私のリソース ファイルは、デフォルトの名前 ("Resources.resw") と場所 ("Strings\en-US" など) を使用します。
経由でリソースにアクセスするResourceLoader
と、ReSharper が文句を言います。例:
private readonly ResourceLoader _resourceLoader = new ResourceLoader();
private void DoSomething()
{
string s = _resourceLoader.GetString("TestEntry");
}
ReSharper は、いくつかのリソース ファイルにいくつかの "TestEntry" キーがあるため、あいまいな参照を作成していると文句を言います。当たり前。それが要点です。リソース管理は正しいリソースを自動的に使用する必要があり、実際に使用されます。
では、なぜ ReSharper は不平を言うのでしょうか? ReSharper のバグですか、それとも本当に何か問題がありますか?
ちなみに、ReSharperは (他のかなり役に立たないことの中でも)resource:
のようにキー文字列の前に置くことを推奨しています_resourceLoader.GetString(resource: "TestEntry")
(そして、それが冗長であると不平を言っています)。これにより、ReSharper の警告が消えます。それは何をしますか?それは改善ですか?
編集:ああ!私はどういうわけresource:
かいくつかの特別な構文だと思っていましたが、それは単なる名前付きメソッド引数です...