jjzjj

Localization

全部标签

c# - 了解如何本地化资源

我知道有很多示例,但我没有仔细考虑...我只想本地化一些字符串和文本文件。这就是我目前接收字符串或文件内容所做的事情MyResources.ResourceManager.GetString(name+"IdentString");现在我正在寻找一种方法来存储其他语言。资源被包装到ASP.NetMVC应用程序使用的提供程序(目前大约有12个提供程序,但future数量会增加)中(没有附加View!)据我所知,有两种方法可以存档:包含资源的每种语言的卫星集基于文件的ResourceManager,其中每种语言都有自己的二进制资源文件据我所知,我必须在这两种情况下都使用外部工具,并且必须将

c# - 单数/复数词的本地化 - 语法数字的不同语言规则是什么?

我一直在开发一个.NET字符串格式化库来协助应用程序的本地化。它称为SmartFormat并在GitHub上开源.它试图解决的问题之一是GrammaticalNumbers.这也称为“单数和复数形式”或“条件格式”,这是它在英语中的样子的片段:varmessage="There{0:is|are}{0}{0:item|items}remaining";//YoucanusetheSmart.FormatmethodjustlikeusingString.Format:varoutput=Smart.Format(CultureInfo.CurrentUICulture,message,

c# - 如何在 Windows Phone 上更改 C# 中的本地化?

我的资源文件有两种语言,我的应用程序已经读取了其中一种语言的值。我希望能够在C#中更改我的应用程序的语言(使用其他资源文件),而不是在“设置”中更改整个手机的语言。这可能吗?如果是,怎么办? 最佳答案 在App.xaml.cs中,在InitializePhoneApplication方法中:privatevoidInitializePhoneApplication(){Thread.CurrentThread.CurrentCulture=newCultureInfo("fr-FR");Thread.CurrentThread.Cu

c# - 在 WPF/XAML 中显示本地时区的时间

我的应用程序在多个不同设备之间同步数据。出于这个原因,它将所有日期存储在UTC时区中,以说明可能被设置为不同时区的不同设备。问题是,当我读回日期并显示它们时,它们似乎不正确(大多数用户使用英国夏令时,所以他们晚了一个小时)。我是否需要手动覆盖UI线程的setCurrentCulture属性?我知道我必须在Silverlight中执行此操作。 最佳答案 您是否将“Utc”指定为DateTime.Kind在解析存储的DateTime并将其转换为DateTime.ToLocalTime()时?publicDateTimeSubmitted

c# - 在 Visual Studio ASP.NET 解决方案中禁用 Resharper 本地化检查

我在visualstudio中有一个大型网站解决方案,由一个ASP.NET网站项目和许多类库项目组成。我正在寻找一种方法:完全禁用ReSharper本地化,或者;强制“英语”作为默认语言,并且是唯一的语言该解决方案是我们组织的内部应用程序,本地化的可能性为零。同时,我使用StyleCop和ReSharper进行代码风格管理,并且厌倦了到处都是“Stringcan/shouldbelocalized”警告等。我可以转StyleCop和Resharper设置中的一些警告已关闭,但是我宁愿将英语指定为唯一的语言等。我认为在每个类库项目的AssemblyInfo.cs文件中有一种方法可以指定仅

c# - 我如何强制整个应用程序的本地化文化为 en-US

我在我的一个应用程序中遇到了一些字节转换和一些计算的问题。我能够将它贡献给运行它的人,它在Windows中具有意大利文化设置。所以我的问题是:在运行我的应用程序的任何计算机上,“en-US”的最佳方式是什么。我在下面有一个代码示例,但我不确定我使用的任何线程是否会继承它。[STAThread]staticvoidMain(){System.Threading.Thread.CurrentThread.CurrentUICulture=newSystem.Globalization.CultureInfo("en-US");System.Threading.Thread.CurrentT

c# - StreamReader 提示文件不存在,但它确实存在

我有一个本地化的应用程序,可以在整个欧洲使用。我有一个从磁盘加载文件的菜单选项。此操作在我的开发机器上运行良好,但在我用来测试其他操作系统(例如法语、西类牙语等)的虚拟机上不起作用。当StreamReader尝试打开文件时会生成FileNotFoundException。它说“'找不到文件C:\ProgramFiles\MyCompany\MyTool\bin\Files\debug.txt'”事实是,该文件确实存在,位于正确的位置并具有正确的文件名。目标(法语)操作系统上的目录名称与开发机器相同。有什么想法吗?stringourPath=System.IO.Path.GetDirec

c# - 如何从资源中获取字符串以在 xaml 的 WPF 资源部分中分配

我有一个具有以下用户控件的XBAP应用程序:...现在我想从resx文件中获取字符串“xxUser”,该文件作为资源嵌入到应用程序中我如何实现这一点? 最佳答案 我能够在一个程序中做到这一点:我还必须在我的xaml中包含.Properties命名空间,如下所示:xmlns:prop="clr-namespace:MyProjectNamespace.Properties"这让我不仅可以使用我为我的项目定义的字符串资源来实现全局化,而且我还能够绑定(bind)(两种方式)到我的应用程序的设置。这让我非常容易记住窗口的位置、大小等。如您

c# - 在 .net 站点中使用资源文件的最佳替代方法

过去,我使用asp.net的内置资源文件来处理本地化。它运行良好,我们发现它在我们的业务中易于使用和维护。但有一个很大的缺点-我们客户的支持团队无法自行更新资源文件。我们有一个即将开始的大项目,允许外部支持团队管理本地化的选项是一个主要要求。到目前为止,我们只有客户与我们联系,我们会翻译文章,然后将更新后的resx文件滚动到实时服务器。我知道更新resx文件会导致应用程序重新编译,我不喜欢允许非技术人员下载和乱用resx文件的想法(更不用说让网站在实时环境中未编译)所以我我想知道除了沿着数据库路线走之外,我们是否还有其他选择?如果我们确实必须将这种类型的本地化功能构建到一些数据库表中,

c# - 有什么理由不使用标准 resx+static 绑定(bind)来本地化 WPF 吗?

我正在寻找一种非常简单的方法来将我的应用程序本地化为日语以及默认的英语。唯一的要求是我们能够以指定的语言启动它。我们使用的LocBaml东西笨重、复杂、容易出错,并且使我们的构建过程极其困难。我正在考虑将所有内容移回资源文件(Strings.resx、Strings.ja.resx)并只进行静态绑定(bind),如下所示:然后在启动时找出他们想要的语言并切换从中提取字符串的资源:publicstaticvoidMain(string[]args){if(args[0]=="-lang"){Thread.CurrentThread.CurrentUICulture=CultureInfo