Asp.Net Mvc后台数据验证自测小Demo

*、这里只做后台数据验证,利用mvc数据验证标记验证数据,并获取错误信息提示后页面中。

1、实现效果如下:

2、model类 People.cs

using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

namespace WebTest.Areas.Validation.Models
{
    public class People
    {
        public int ID { get; set; }

        [Required(AllowEmptyStrings = false, ErrorMessage = "用户名不可为空")]
        [StringLength(5)]
        public string Name { get; set; }

        [Required(AllowEmptyStrings = false, ErrorMessage = "密码不可为空")]
        public string Password { get; set; }
    }
}

3、视图Views:  Index.cshtml

@{
    ViewBag.Title = "Index";
}

<h2>校验</h2>

@using (Html.BeginForm("Get", "Default", FormMethod.Post, new { @class = "MyForm", @id = "123" }))
{
    <p> 用户 </p >
    @Html.TextBox("Name")
    @Html.ValidationMessage("Name")
    <p> 密码 </p > @Html.TextBox("Password")
    @Html.ValidationMessage("Password")
    <input type = "submit" value = "提交" />
}

4、控制器Controller:DefaultController.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Web;
using System.Web.Mvc;
using WebTest.Areas.Validation.Models;

namespace WebTest.Areas.Validation.Controllers
{
    public class DefaultController : Controller
    {
        // GET: Validation/Default
        public ActionResult Index()
        {
            return View();
        }

        public ActionResult Get(People p)
        {
            //验证模型状态字典的此实例是否有效
            if (ModelState.IsValid)
            {
                //验证通过,跳转
                return Redirect("");
            }
            else
            {
                //验证不通过,返回当前页面
                return View("Index");
            }
        }
    }
}
时间: 2024-10-14 16:17:21

Asp.Net Mvc后台数据验证自测小Demo的相关文章

&lt;转&gt;ASP.NET学习笔记之MVC 3 数据验证 Model Validation 详解

MVC 3 数据验证 Model Validation 详解 在MVC 3中 数据验证,已经应用的非常普遍,我们在web form时代需要在View端通过js来验证每个需要验证的控件值,并且这种验证的可用性很低.但是来到了MVC 新时代,我们可以通过MVC提供的数据验证Attribute来进行我们的数据验证.并且MVC 提供了客户端和服务器端 双层的验证,只有我们禁用了客户端js以后,也会执行服务端验证,所以大大提高了我们的开发进度.今天我们就一起以一个初学者的身份来进入数据验证的殿堂. 首先,

MVC中数据验证

http://www.studyofnet.com/news/339.html http://www.cnblogs.com/kissdodog/archive/2013/05/04/3060278.html 本文导读:ASP.NET MVC3中的Model是自验证的,这是通过.NET4的System.ComponentModel.DataAnnotations命名空间完成的. 我们要做的只是给Model类的各属性加上对应的验证标记(Attributes)就可以让MVC3框架帮我们完成验证.下面

asp.net mvc3 的数据验证(一)

原文:asp.net mvc3 的数据验证(一)      对于web开发人员来说,对用户输入的信息进行验证是一个重要但是繁琐的工作,而且很多开发者都会忽略.asp.net mvc3框架使用的是叫做“数据注解”(DataAnnotations)的方式进行数据验证. 这种方式允许程序在客户端和服务器端进行双重验证(asp.net的数据验证控件也是双重验证的).双重验证的好处是 客户端验证会直接相应用户,不用提交表单,也就减轻了服务器的压力还提高了用户体验:而服务器端验证是确保数据的有效性和完整性,

ASP.NET MVC的客户端验证:jQuery的验证

http://www.cnblogs.com/artech/archive/2012/06/17/client-validation-01.html 之前我们一直讨论的Model验证仅限于服务端验证,即在Web服务器根据相应的规则对请求数据实施验证.如果我们能够在客户端(浏览器)对用户输入的数据先进行验证,这样会减少针对服务器请求的频率,从而缓解Web服务器访问的压力.ASP.MVC 2.0及其之前的版本采用ASP.NET Ajax进行客户端验证,在ASP.NET MVC 3.0中,jQuery

期货大赛项目|四,MVC的数据验证

上图先看下效果 样式先不说,先了解下数据验证是怎么实现的 一 必须是强类型的视图 二 这些显示提示的话语,都在强类型的实体中 三 必须使用Html.BeginForm或者Html.AjaxBeginForm 四 提交方式必须是form的submit 上代码 @model FuturesContest.ViewModel.User.UserViewModel @{ Layout = null; } <!DOCTYPE html> <html lang="en">

(转)MVC 3 数据验证 Model Validation 详解

继续我们前面所说的知识点进行下一个知识点的分析,这一次我们来说明一下数据验证.其实这是个很容易理解并掌握的地方,但是这会浪费大家狠多的时间,所以我来总结整理一下,节约一下大家宝贵的时间. 在MVC 3中 数据验证,已经应用的非常普遍,我们在web form时代需要在View端通过js来验证每个需要验证的控件值,并且这种验证的可用性很低.但是来到了MVC 新时代,我们可以通过MVC提供的数据验证Attribute来进行我们的数据验证.并且MVC 提供了客户端和服务器端 双层的验证,只有我们禁用了客

ASP.NET MVC的客户端验证:jQuery验证在Model验证中的实现

原文:ASP.NET MVC的客户端验证:jQuery验证在Model验证中的实现 在简单了解了Unobtrusive JavaScript形式的验证在jQuery中的编程方式之后,我们来介绍ASP.NET MVC是如何利用它实现客户端验证的.服务端验证最终实现在相应的ModelValidator中,而最终的验证规则定义在相应的ValidationAttribute中:而客户端验证规则通过HtmlHelper<TModel>相应的扩展方法(比如TextBoxFor.EditorFor和Edid

jQuery 中 ajax 提交数据应用的一个小demo

举一个jquery中ajax的应用小 demo 便于以后的更多项目拓展 ,这里要注意的是保存的文件名问题 ... ajax02.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="form&qu

jQuery 中 ajax 请求数据应用的一个小demo

举一个jquery中ajax的应用小 demo 便于以后的更多项目拓展 ,这里要注意的是保存的文件名和文件图片路径问题 ... ajax01.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title> ajax小例子 </title> </head> <body> <!--