【发布时间】:2013-07-02 14:17:17
【问题描述】:
我有一个 Windows 8 应用程序,我按照 in the MSDN 的描述进行了本地化。我的资源文件使用默认名称(“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: 是一些特殊的语法,但它只是一个named method argument...
【问题讨论】:
-
ReSharper recommends...and then complains that it's redundant我开始觉得 Resharper 看起来很像我的女朋友。 -
" ReSharper 建议(以及其他相当无用的东西)将 resource: 放在键字符串之前" - 不。小心区分 ReSharper 的 Quick Fixes 和 Context Actions
-
@AakashM:哎呀。是的,你是对的。我已经相应地编辑了我的问题。
-
你可能会觉得这篇文章很有趣:stackoverflow.com/questions/17527955/…
-
也许您应该使用 Jetbrains 提出问题:youtrack.jetbrains.com/issues/RSRP
标签: c# localization resharper windows-store-apps embedded-resource