- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在 C#6 中,使用 nameof() 关键字,现在可以创建使用本地化的类型安全 Display 属性。(另见 DisplayName attribute from Resources?)
结果会是这样的:
[Display(NameRes = Localization.Account.MinPasswordLength), ResourceType = typeof(Localization.Account))]
public int MinPasswordLength { get; set; }
但是,在为数十个属性键入此内容后,我觉得一定有更简单的方法。每次我(几乎)输入相同的信息两次。
我的问题是:如何创建自定义 DisplayName 属性以从名称信息推断 ResourceType?
代码看起来像这样:
[Display(NameResource = Localization.Account.MinPasswordLength)]
public int MinPasswordLength { get; set; }
知道这是否可能吗?如果是这样:怎么做?
最佳答案
一种方法是定义另一个只定义资源类型的属性。
您将此属性放入类定义中。在资源搜索期间,您将检查类型主机以确定资源类型。
示例:
[DisplayResourceHost(typeof(Localization.Account))]
public class ViewModel
{
[Display(NameResource = Localization.Account.MinPasswordLength)]
public int MinPasswordLength { get; set; }
}
关于c# - 创建推断 ResourceType 的自定义 DisplayAttribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39306140/
我有一个 poco 类产品 public class Product { public int Id {get;set;} [RequiredEx] public string
我在我的 WPF 应用程序中使用 MVVM 模式,并将具有本地化功能的 DisplayAttribute 应用于我的模型属性: class MyModel { [Display(
我有一个枚举类... public enum LeadStatus : byte { [Display(Name = "Created")] Created = 1, [Display
我有一个像这样的 Helper 方法来获取 PropertyName(试图避免使用魔法字符串) public static string GetPropertyName(Expression> exp
我已经在 Visual Studio 中启动了一个默认的 MVC4 项目, 我模型中的某处是这段代码 public class LoginModel { [Required] [D
因为我们可以使用 System.ComponentModel.DataAnnotations.DisplayAttribute 为属性设置标签,所以我想将它用于类,但不允许在类中使用。 using S
我有一个从 EF4 生成的部分类,我分配了一个 MetadataType 以便在 ASP.NET MVC3 上显示控件的名称,它按预期工作。 我想使用分配给每个属性的相同 DisplayAttribu
我希望显示名称包含一些 html 文本。 例如: [Display(Name = "First Name boldtext)] public string FirstName { get; set;
我有一个基类,它继承了另一个基类的属性,并添加了一个新的属性,如下所示: public class DataSourceWithIntervalBase : DataSourceBase {
我通过以下方式在我的 UI 中创建了一些项目 Buttons.cs [Browsable(true)] [Display(Order = 1, Name = "Object1", GroupName
请帮我在 DisplayAttribute 中添加我尝试过的属性,但将 consturtor 错误设置为 null var fieldName = string.Format(
在 C#6 中,使用 nameof() 关键字,现在可以创建使用本地化的类型安全 Display 属性。(另见 DisplayName attribute from Resources?) 结果会是这
在尝试编译我的 .Dll 时,我设法找出了所有引用资料和错误,除了这两个(我有多个)。 "The type or namespace name 'Display' could not be found
我正在绑定(bind) DataGrid.ItemsSource属性(property)给List目的。我正在通过 支持 Silverlight 的 WCF 服务 获取数据。所以 PersonDeta
我有一个模型类,具有如下属性: [Display(Name = "Phone", Description="Hello World!")] public string Phone1 { get; se
给定具有这些数据注释的模型: public class Example { [Required] [Display(Name = "Activity response")] p
我想知道是否可以将 ASP.NET MVC6 中的 IHtmlLocalizer 直接与 POCO 类一起使用?目前我有几个 View 模型使用 DisplayAttribute 来在 View 和验
给定以下代码: using System.ComponentModel.DataAnnotations; using System.Linq; using Xunit; namespace Compa
class SomeModel { [Display(Name = "Quantity Required")] public int Qty { get; set; } [Di
想知道这是否可能或具有这种效果的东西。 public class MyModel { public string Name { get; set; } [Display(Name =
我是一名优秀的程序员,十分优秀!