首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MSBuild AssignCulture任务将空区域性分配给伪区域性(qps-ploc,qps-plocm)

MSBuild AssignCulture任务将空区域性分配给伪区域性(qps-ploc,qps-plocm)
EN

Stack Overflow用户
提问于 2011-11-29 17:40:21
回答 2查看 525关注 0票数 1

我的项目中有许多本地化的RESX文件:

代码语言:javascript
复制
    Messages.resx
    Messages.de.resx
    Messages.qps-ploc.resx

最后一个是用于测试目的的伪本地化文本资源。我希望将其编译为附属程序集(即project/qps-ploc/project.resources.dll)作为其余本地化。但是由于某些原因,AssignCulture任务正在将空区域性分配给该资源,并且没有将其编译为结果。

来自MSBuild日志的代码片段:

代码语言:javascript
复制
    Task "AssignCulture"
      Culture of "de" was assigned to file "Resources\Messages.de.resx".
      Culture of "" was assigned to file "Resources\Messages.resx".
      Culture of "" was assigned to file "Resources\Messages.qps-ploc.resx".
    Done executing task "AssignCulture".

伪本地化区域性已在注册表中启用,如所述,herenew CultureInfo("qps-ploc")返回正确的伪区域性。

这是AssignCulture的预期行为,还是我用错了?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-30 10:12:41

不知道发生了什么,但突然一切都开始正常工作。可能与系统重启有关。

票数 1
EN

Stack Overflow用户

发布于 2014-11-13 01:32:10

我也有同样的问题,它也在重启后自动解决了。我认为这是因为AssignCulture任务必须检查资源文件中使用的区域性,如果它不是标准区域性或在文件夹中有.nlp文件的自定义区域性,则在编译期间分配会失败,并且不会创建任何资源文件。

在我的例子中,我刚刚创建了一个自定义区域性,但我猜Visual Studio不知道这一点,因为它肯定缓存了上次系统重新启动时找到的资源文件。再次重启PC必须更新了缓存的资源文件(包括自定义文件),然后AssignCulture任务才能成功匹配资源,并创建了资源文件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8308577

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档