Tag: 资源

访问asp.net控件中的全局资源

meta:resourcekey=”WizardStep1Resource1″ 这是我用来访问App_LocalResources 。 如何访问App_GlobalResources的资源? 解决方案:在App_GlobalResources创建名为Globalresource.resx的资源。 在文件中设置一个名为Test的属性,文本为Hello。 然后它被称为Text=”

将带有占位符(`{0}`)的字符串添加到资源中是一个好主意吗?

我在资源文件中添加了一个字符串。 我的应用程序将被本地化。 但是,将占位符( {0} )添加到资源中的字符串是一个好主意吗? 如果一些非技术人员进行本地化怎么办? 有没有办法让他在不知不觉中搞砸了? 如果这不是一个好主意,我该怎么办? 这是一个简单的例子。 我将使用WPF资源字典。 例: // Resource1.resx // Name | Value //————————————————————— // RELATIONSHIP_STATUS_MSG | {0} is in relationship with {1}. // class Program { static void Main(string[] args) { string msg = string.Format(Resource1.RELATIONSHIP_STATUS_MSG, “Romeo”, “Juliot”); Console.WriteLine(msg); } }

C#:如何从某种文化中获取资源字符串

我有一个资源程序集,其中包含各种语言的翻译文本。 项目类似于: FooBar.resx FooBar.nb-NO.resx FooBar.sv-SE.resx … 我可以使用这样的静态属性来获取文本: var value = FooBar.Hello; 或者通过使用这样的reflection: var value = resourceAssembly .GetType(“Namespace.FooBar”) .GetProperty(“Hello”) .GetValue(null, null) as string; 两种方式都将获得属于当前线程的当前UI文化的值。 这很好,完全是我通常喜欢的。 但是,如果我明确地想要瑞典的价值,而不必改变UI文化,我能做些什么吗?

是否可以使用WinForms中的设计器从不同的项目访问资源?

我有一个相当大的解决方案,里面有很多项目。 理想情况下,我想创建一个Resources项目,其中包含我在整个应用程序中需要的所有嵌入图标。 我读过人们通过代码引用它们的文章,但是有可能在设计器中访问这个项目的资源吗? 换句话说,我想在设计器中单击表单的BackgroundImage属性时选择资源。 如果没有,在尝试将我的资源与主项目分离时,我应该考虑哪种架构? 每次修改一行或两行代码时,释放100mb可执行文件可能不是一个明智的想法。

动态读取文件中的资源

我一直在使用resx文件作为静态字符串,以便有一个更改它们的中心位置。 问题是我在构建和部署项目后无法更改它们。 在部署之后,我想要更改一些字符串,而不重新启动进程(因此.config文件已经用完)。 可以编写有效解析配置文件(XML / JSON / YAML /?)的代码,例如将结果缓存X秒或使用FileSystemWatcher监视它的变化,但是已经完成了这样的事情? 编辑:使用Json.NET和Rashmi Pandit指向CacheDependency的指针我编写了这个JSON解析类,它缓存解析后的结果直到文件被更改: public class CachingJsonParser { public static CachingJsonParser Create() { return new CachingJsonParser( HttpContext.Current.Server, HttpContext.Current.Cache); } private readonly HttpServerUtility _server; private readonly Cache _cache; public CachingJsonParser(HttpServerUtility server, Cache cache) { _server = server; _cache = cache; } public T Parse(string relativePath) { var cacheKey = […]

该项在“Resources”参数中多次指定。 “Resources”参数不支持重复项

在编译我的Visual Studio C#项目时,我收到以下错误: The item “obj\Debug\SampleProject.Forms.MDIMain.resources” was specified more than once in the “Resources” parameter. Duplicate items are not supported by the “Resources” parameter. 但是我在互联网上搜索了很多,但没有一个解决方案适合我。 我试图删除表单并将其重新添加到项目中,但它对我不起作用。 我只有一个resx文件。 我正在使用VS 2010。 此外,我尝试了以下解决方案,但它不适合我: https://stackoverflow.com/a/7928191/2074603 https://stackoverflow.com/a/10066009

资源,放置它们的位置以及如何在C#中引用它们

我已经使用过C#和其他编程语言一段时间了,我很惭愧地说我不熟悉在哪里放置程序图标等资源的标准,以及如何在我的代码中引用它们。 具体来说,对于C#Windows窗体应用程序,在哪里放置我的图标资源是合适的,一旦我将它们放在正确的位置,引用它们的路径是什么? 非常感谢您的帮助。

使用动态文件名读取存储在资源文件(resx)中的字符串

在我的C#应用​​程序中,我需要创建一个为每个客户定制的字符串.resx文件。 我想要做的是每次必须向我的客户提供我的应用程序时都要避免重新编译整个项目,所以我需要动态访问这个字符串。 那么,如果我只在执行时间记录文件名,我如何访问(在应用程序执行期间)resx文件? 从现在起我写了类似的东西: Properties.Resources.MyString1 其中Resource是我的Resource.resx文件。 但是我需要这样的东西: GetStringFromDynamicResourceFile(“MyFile.resx”, “MyString1”); 可能吗? 谢谢马克

从Silverlight中的文件夹加载资源“.resx”

我有一个多语言应用程序,客户想要编辑他想要的Resources.resx文件。 我创建了silverlight项目并添加了一些文件: Resources.resx Resources.en-US.resx1。 Resources.uk-UA.resx2。 他们都有构建行动“嵌入式资源” 一切正常,但这些文件嵌入到XAP文件中。 客户无法编辑它们。 我的资源经理我是这样的: private static ResourceManager manager; public static ResourceManager Manager { get { if (manager == null) manager = new ResourceManager(“Project.Resources”, Assembly.GetExecutingAssembly()); return manager; } } 如何从某个文件夹获取此资源,而不是将它们构建为.xap文件???

.NET全球化和卫星DLL

我正在努力本地化我用C#编写的应用程序。 一切似乎都很好用,使用卫星资源程序集来翻译每个表单的字符串(根据本教程: http : //msdn.microsoft.com/en-us/library/y99d1cd3%28VS.71%29.aspx ) 但是,应用程序最终将需要相当多的语言,这意味着我的工作目录中的目录(即/ zh-tw,/ zh-cn,/ fr-FR,/ ja-JP等)。 我想通过在/ languages或/ resources子目录中找到所有这些来清理它(换句话说,设置“附属程序集的基本路径”)。 但我搜索了高低,并且无法找到任何方法来定制这些附属组件的位置。 任何提示将非常感谢!