asp.net-mvc - ASP.Net MVC3-强制使用大写字母的自定义数据注释

标签 asp.net-mvc data-annotations uppercase

我想创建一个自定义数据注释,该注释将强制输入的数据大写。如果用户以小写形式键入内容,则应将其自动(无提示)转换为大写形式。这是而不是一个验证问题。

我想要这样的东西:

public class Address {
    public string Address {get; set;}
    public string City {get; set;}

    [ForceUpperCase]
    public string State{get; set;}

}

例如,当使用@ HTML.EditorFor(x => x.State)时,我希望创建的HTML可以为我解决所有这些问题-我不想写jQuery调用来更改数据或强制使用特定的 class 名称。

最佳答案

我可能是错的,但是我看不到使用属性来做到这一点的方法。但是,您始终可以为您的 property 使用备用字段,如下所示:

public class Address {
    private string _state;

    public string Address {get; set;}
    public string City {get; set;}

    public string State
    {
        get { return _state; }
        set { _state = value.ToUpper(); }
    }
}

当然,这很丑陋,但是有效。

关于asp.net-mvc - ASP.Net MVC3-强制使用大写字母的自定义数据注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6553272/

相关文章:

c# - 为 Orchard CMS 构建一个简单的交互式 FizzBu​​zz 模块?

asp.net-mvc - 处理 "object reference not set to an instance of an object"错误

c# - 如何清除 Mono MVC2 应用程序中的 OutputCache

c# - ErrorMessage with Range 使用数据注释

javascript - JavaScript 中的土耳其语大小写转换

python - 将字符串中的一些小写字母更改为大写

asp.net - 将框架导入添加到 .csproj

asp.net-mvc - 在 asp.net mvc 中设置来自 Controller 的动态数据注释错误消息

c# - 编写 CompareTo DataAnnotation 属性

使用 ASCII 将小写字母转换为大写字母