首页 > 后端开发 > C++ > 如何从 .NET 中的资源文件动态检索显示名称?

如何从 .NET 中的资源文件动态检索显示名称?

DDD
发布: 2025-01-01 14:28:10
原创
257 人浏览过

How Can I Dynamically Retrieve Display Names from Resource Files in .NET?

从资源中检索显示名称

在本地化应用程序中,开发人员经常需要为模型属性显示用户友好的标签。虽然 DisplayName 属性允许指定静态显示名称,但在某些情况下可能需要从外部源(例如资源文件)动态检索这些名称。

不幸的是,单独使用 DisplayName 属性并不能提供从资源指定动态值的能力。遇到编译器错误“属性参数必须是属性参数类型的常量表达式、typeof 表达式或数组创建表达式”,表示提供的参数必须是静态值。

解决方法.NET 4 和 MVC 3

对于使用 MVC 3 和 .NET 4 的应用程序,通过使用更新的 Display 属性可以找到解决方案System.ComponentModel.DataAnnotations 命名空间。此属性扩展了其前身的功能,包括利用本地化的能力。

要使用此属性,请按如下方式修改您的模型:

public class MyModel
{
    [Required]
    [Display(Name = "labelForName", ResourceType = typeof(Resources.Resources))]
    public string name { get; set; }
}
登录后复制

注意:此解决方法要求将资源文件标记为“嵌入式资源”并使用“ResXFileCodeGenerator”自定义工具。此外,App_GlobalResources 或 App_LocalResources 不应与 MVC 一起使用。

以上是如何从 .NET 中的资源文件动态检索显示名称?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板