编程语言
首页 > 编程语言> > c# – 有没有办法不使用默认的resx文件进行国际化?

c# – 有没有办法不使用默认的resx文件进行国际化?

作者:互联网

我们正在开发一个ASP.NET项目,我们正在使用resx文件来实现国际化.

虽然,它只在我创建默认资源文件时编译(例如,Page.ascx.resx).它不允许我们仅使用特定于文化的文件(如Page.ascx.en-US.resx,Page.ascx.km-KH.resx,Page.ascx.pl-PL.resx等)

我已经使用了以下程序集属性.它让我编译,但我得到一个运行时错误.

[assembly: NeutralResourcesLanguageAttribute("km-KH",UltimateResourceFallbackLocation.Satellite)]

任何sugestions?

谢谢!

解决方法:

不,我不这么认为 – 资源文件的基本假设是总是有一个后备策略:如果你寻找de-CH的“德国(瑞士)”并找到它,它将被使用.如果它丢失了,它会寻找“de”并使用它的“泛型”德语,如果即使失败了,总会有基本的标准resx文件重新开始.

默认的resx(没有任何文化,如“de-CH”)将被编译到您的默认程序集中,这样即使没有语言和文化特定的附属程序集存在,您的应用程序也能正常工作.

这实际上是ASP.NET系统内部的一个基本设计假设,因此我不会尝试与该系统“斗争” – 采用它,并习惯它.从长远来看,它会更容易.

标签:c,asp-net,internationalization,resx
来源: https://codeday.me/bug/20190701/1344407.html