当前位置: 首页 > news >正文

asp.net mvc2 数据验证方法

  1.在MODEL定义一下attribute,通常包括:

[Required(ErrorMessage="stu no is not null")]
        [StringLength(10,ErrorMessage="length is invalid")]
        public global::System.String stuNo
        {
            get
            {
                return _stuNo;
            }
            set
            {
                if (_stuNo != value)
                {
                    OnstuNoChanging(value);
                    ReportPropertyChanging("stuNo");
                    _stuNo = StructuralObject.SetValidValue(value, false);
                    ReportPropertyChanged("stuNo");
                    OnstuNoChanged();
                }
            }
        }


 [Required(ErrorMessage="can not be null")]
        public global::System.String name
        {
            get
            {
                return _name;
            }
            set
            {
                OnnameChanging(value);
                ReportPropertyChanging("name");
                _name = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("name");
                OnnameChanged();
            }
        }



Required:必须输入,不能为空
StringLength:字符串的长度不能大于设置的长度
Range:数字的可输入范围
RegularExpression:正则表达式匹配



2.VIEW代码:


  
<% using (Html.BeginForm()) {%>
       


        <fieldset>
            <legend>Fields</legend>
            
            <div class="editor-label">
                <%: Html.LabelFor(model => model.stuNo) %>
            </div>
            <div class="editor-field">
                <%: Html.TextBoxFor(model => model.stuNo) %>
                <%: Html.ValidationMessageFor(model => model.stuNo) %>
            </div>
            
            <div class="editor-label">
                <%: Html.LabelFor(model => model.name) %>
            </div>
            <div class="editor-field">
                <%: Html.TextBoxFor(model => model.name) %>
                <%: Html.ValidationMessageFor(model => model.name) %>
            </div>
            
            <div class="editor-label">
                <%: Html.LabelFor(model => model.classId) %>
            </div>
            <div class="editor-field">
                <%: Html.TextBoxFor(model => model.classId) %>
                <%: Html.ValidationMessageFor(model => model.classId) %>
            </div>
            
            <p>
                <input type="submit" value="Create" />
            </p>
        </fieldset>




3.controller判断一下:
[HttpPost]
        public ActionResult Create(Student s)
        {
            if (ModelState.IsValid)
            {
                svm.AddStudent(s);
                return Index();
            }
            else
            {
                return View("Create");
            }
        }


相关文章:

  • asp.net mvc 路由机制小记
  • mvc 中使用jquery ajax与action传值
  • asp.net MVC Controller 小记
  • access 如何让ID列重新开始
  • asp.net mvc view使用小结(TEXTBOX为例)
  • C#正则表达式整理备忘
  • asp.net mvc view 使用小结2
  • asp.net mvc2 ajax 基本调用
  • 秒大刀之旅----M2模型绘制
  • C# TASK 使用实例
  • 今天宝宝生日
  • Windows 7 的一些使用技巧
  • 无法自动调试WebService,未能远程调试过程,这通常说明未在服务器上启动调试
  • WCF 配置错误:没有与给定的地址“{0}”匹配的协议绑定。协议绑定在 IIS 或 WAS 配置中的站点级别配置。
  • [Web开发] IE8中如何防御网站被Clickjacking攻击
  • 深入了解以太坊
  • php的引用
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • 30秒的PHP代码片段(1)数组 - Array
  • Angular 响应式表单 基础例子
  • Computed property XXX was assigned to but it has no setter
  • Java,console输出实时的转向GUI textbox
  • Kibana配置logstash,报表一体化
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • PHP 使用 Swoole - TaskWorker 实现异步操作 Mysql
  • Python 基础起步 (十) 什么叫函数?
  • 盘点那些不知名却常用的 Git 操作
  • 前端技术周刊 2018-12-10:前端自动化测试
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 如何学习JavaEE,项目又该如何做?
  • 山寨一个 Promise
  • 一份游戏开发学习路线
  • 在Unity中实现一个简单的消息管理器
  • No resource identifier found for attribute,RxJava之zip操作符
  • 带你开发类似Pokemon Go的AR游戏
  • 如何正确理解,内页权重高于首页?
  • ​Spring Boot 分片上传文件
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • ## 临床数据 两两比较 加显著性boxplot加显著性
  • #### go map 底层结构 ####
  • #ubuntu# #git# repository git config --global --add safe.directory
  • #进阶:轻量级ORM框架Dapper的使用教程与原理详解
  • (20050108)又读《平凡的世界》
  • (2022 CVPR) Unbiased Teacher v2
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (十六)Flask之蓝图
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (一)使用Mybatis实现在student数据库中插入一个学生信息
  • (原创)可支持最大高度的NestedScrollView
  • *p++,*(p++),*++p,(*p)++区别?
  • .aanva
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes