我们使用resx文件来本地化我们的Web应用程序。 我们通常创build本地resx文件(映射到特定页面),当只有一个页面使用特定的短语,以及一个全球resx文件,当多个页面需要短语。 但是关于全局resx文件的好处是它们是一个类,你可以调用像调用一个类的属性这样的短语: Resource.UI.iNotFound 所以我在想 – 为什么要有本地的resx文件呢? 为什么不为整个应用程序使用一个全局resx文件,这样避免调用不存在的短语的运行时错误? 我确信有一个很好的答案,我只是不知道它是什么….
以下资源文件的最佳用法是什么? 属性 – >资源( Phil在DataAnnotation中使用此资源进行本地化) App_GlobalResources文件夹 App_LocalResources文件夹 我也想知道(1)和(2)在asp.net mvc应用程序中有什么区别。 谢谢, Soe Moe
在我的webproject中,我在App_GlobalResources文件夹中使用了4个资源文件。 其中一个( lang.resx )在我到达该项目之前已经创build。 它具有正确的名称空间( WebApplication.App_GlobalResources )和访问修饰符: public 。 另一方面,我刚刚创build的另外三个Resource文件具有不同的名称空间( Resources )和internal访问修饰符,并且我无法在Visual Studio的资源文件表单上更改它,因为它被禁用。 如果我试图直接在designer.cs文件中更改它,那么在下次保存文件时将取消修改。 这不是一个严重的错误,但是对于项目中的其他开发人员来说,为他们将要使用的资源文件find不同的名称空间和访问修饰符会造成误导。 谢谢你的帮助。
是否有可能从资源文件中添加一些值到XAML标记? 或者对于本地化,我们总是要在* .cs文件中做这样的事情: txtMessage.Text = Messages.WarningUserMessage; Messages是资源, txtMessage是TextBlock。
我在App_GlobalResources.resx文件中保留了几个文本。 文本必须是多行的,我需要让它们包含换行符。 但是,当我读取内容时,所有换行都不见了(打印\r\n ,而不是CRLF 10 13控制字符)。 我知道我可以通过在读取内容时将\r\n (或其他任何事情)重新replace为CRLF来解决这个问题,但是我想知道为什么这些明确的以文本为目标的resx文件忽略了控制字符 – 而CRLF是非常重要的 – 如果有人知道是否有一个设置或什么,可以使这个工作自然。
有什么令人信服的理由使用它们?
我目前使用.resx文件来pipe理我的服务器端.NET资源。 我正在处理的应用程序还允许开发人员将JavaScript插入到各种事件处理程序中,以便进行客户端validation等。对于本地化我的JavaScript消息和string的最佳方法是什么? 理想情况下,我想将这些string存储在.resx文件中,以保留剩余的本地化资源。 我接受build议。