异步
方式1:使用jquery的异步函数
方式2:使用MVC的AjaxHelper
行为的返回值设置:
JsonResult对象,使用Json方法接收一个对象,在内部会完成对象的js序列化,向输出流中输出json对象
注意:使用Json方法时,默认只允许使用Post请求,如果希望支持Get方法进行异步请求,需要使用Json方法的重载,设置第二个参数JsonRequestBehavior.AllowGet

使用MVC的AjaxHelper实现异步
异步表单:Ajax.BeginForm(string actionName,Ajaxoptions ajaxOptions)
注意:需要使Form闭合,推荐使用using,否则要使用Ajax.EndForm()
需要引入jquery、jquery.unobtrusive-ajax
AjaxOptions的参数(详细见下页),主要如下
HttpMethod提交类型
Confirm提交前的回调函数,指定为一个js的function
OnSuccess提交完成后的回调函数,可以根据返回的参数确定服务器端处理情况

校验
在Model中创建类型,用于在View中作为强类型页面的类型
.NET 框架中System.ComponentModel.DataAnnotations命名空间包括了众多可用的内置验证特性,用于修饰属性,常用的四个如下:
[Required]
[StringLength]
[Range]
[RegularExpression]
属性ErrorMessage:指定错误提示信息

在View的页面中,首先指定页面强类型@model 类型
使用Html.***For(model=>model.Property)生成表单,这些表单元素中就会包含校验规则属性
引用jquery、jquery校验、jquery隐式校验3个组件
通过Html.EnableClientValidation(true);控制客户端验证的启用与禁用(mvc3中自动开启)
使用Html.ValidationMessageFor(…)显示校验信息,也可以使用Html.ValidationSummary()统一显示
点击提交按钮转到后台Action,使用ModelState.IsValid判断前台验证是否成功,如果返回true表示验证成功

区域Area
随着业务的需要,结构需求会越来越多,项目中文件越来越多,或者需要更细结构的页面路径,另外可能是多个人合作开发,有多个Web项目需要进行合并在一个网站中访问
用Areas解决上述问题,在项目中新建一个区域,就像引用另外一个项目一样,可以理解为当前项目中的子项目

在项目上右击-》添加-》Area,填写名称后确定,会在这个项目上建一组文件夹出来,就像是一个子项目
修改此文件夹下的***AreaRegistration代码,可以在这个文件中进行路由注册
在Global中进行区域路由注册:AreaRegistration.RegisterAllAreas();

Asp.Net MVC part4 异步、校验、区域Area的更多相关文章

  1. [ASP.NET MVC 小牛之路]08 - Area 使用

    ASP.NET MVC允许使用 Area(区域)来组织Web应用程序,每个Area代表应用程序的不同功能模块.这对于大的工程非常有用,Area 使每个功能模块都有各自的文件夹,文件夹中有自己的Cont ...

  2. 【ASP.NET MVC 学习笔记】- 09 Area的使用

    本文参考:http://www.cnblogs.com/willick/p/3331519.html 1.ASP.NET MVC允许使用 Area(区域)来组织Web应用程序,这对于大的工程非常有用, ...

  3. asp.net MVC 中呈现指定区域下的分部视图

    Html.RenderAction() 可以呈现分部视图. asp.net MVC就是有这种好处,可以将多个子视图无缝合成到一个视图上再输出,那么开发的时候,能够进行模块化开发.看上去同属一个页面上的 ...

  4. ASP.NET MVC 4 异步加载控制器

    ASP.NET 4 Developer preview中的异步操纵器 在放弃了对.NET 3的支持之后, ASP.NET MVC 4 彻底拥抱了Task类库, 你不需求再蛋疼的给每个Action写两个 ...

  5. ASP.NET MVC 文件异步上传问题处理

    最近在做一个网站,用asp.net MVC4.0来开发,今天遇到了个小问题,通过查找相关渠道解决了,在这里把这个问题写出来,问题非常简单,不喜勿喷,mark之希望可以给遇到相同问题的初学者一点帮助.我 ...

  6. Asp.Net MVC 获取当前 Controller Action Area

    获取控制器名称: ViewContext.RouteData.Values["controller"].ToString(); 获取Action名称: ViewContext.Ro ...

  7. 使用区域组织 ASP.NET MVC 应用程序

    MVC 模式可将应用程序的模型(数据)逻辑与其呈现逻辑和业务逻辑分离. 在 ASP.NET MVC 中,这种逻辑分离还在项目结构中以物理方式实现,在该项目结构中,控制器和视图保存在使用命名约定定义关系 ...

  8. 5. ASP.NET MVC 中的Areas【区域】是什么

    [PS返回上一篇:-->4.ASP.NET MVC 5.0 视图之模型绑定] 从ASP.NET MVC 2.0开始,微软就提供了一个新特性:Areas[区域].Areas仅仅是用来将大型程序拆分 ...

  9. 自学MVC看这里——全网最全ASP.NET MVC 教程汇总

    MVC架构已深得人心,微软也不甘落后,推出了Asp.net MVC.小编特意整理博客园乃至整个网络最具价值的MVC技术原创文章,为想要学习ASP.NET MVC技术的学习者提供一个整合学习入口.本文从 ...

随机推荐

  1. Python基础(8)迭代器、生成器

    一 什么是迭代 1 重复 2 下一次重复是基于上一次的结果 # while True: # cmd=input('>>: ') # print(cmd) # l=['a','b','c', ...

  2. Hadoop之计数器与自定义计数器及Combiner的使用

    1,计数器: 显示的计数器中分为四个组,分别为:File Output Format Counters.FileSystemCounters.File Input Format Counters和Ma ...

  3. Hadoop之yarn调用机制

    1,Mapper方法:如果在map方法之前执行一些程序用setup,之后用cleanup.同理在Reducer方法中也有setup和cleanup. 2,map任务是并行执行,没有谁先谁后,如果是两个 ...

  4. Ubuntu下hadoop集群搭建

    --修改IP地址(克隆镜像后可修改可不修改) http://jingyan.baidu.com/article/e5c39bf5bbe0e739d7603396.html -------------- ...

  5. 膨胀、腐蚀、开、闭(matlab实现)

    膨胀.腐蚀.开.闭运算是数学形态学最基本的变换. 本文主要针对二值图像的形态学 膨胀:把二值图像各1像素连接成分的边界扩大一层(填充边缘或0像素内部的孔): B=[0 1 0      1 1 1   ...

  6. 51nod K 汽油补给 大根堆+小根堆....

    题目传送门 用优先队列瞎搞... 想着在每个地方 先算上一个点到这一个点要花费多少钱 这个用小根堆算就好 然后在这个地方加油 把油钱比自己多的替代掉 这个用大根堆维护一下 然后两个堆之间信息要保持互通 ...

  7. return 与 exit() 的区别

    return是一个关键字,返回函数值:exit()是一个函数: return是语言级的:exit()是操作系统提供的函数: return表示函数退出:exit()表示进程退出: 非主函数中调用retu ...

  8. 【转】针对Android上的ROP攻击剖析

    引言       ROP(Return-oriented programming),即“返回导向编程技术”.其核心思想是在整个进程空间内现存的函数中寻找适合指令片断(gadget),并通过精心设计返回 ...

  9. 使用CloudSight API进行图像识别的Python脚本

    # -*- coding: utf-8 -*- # @Time : 2018/03/20 17:02 # @Author : cxa # @File : sss.py # @Software: PyC ...

  10. Tkinter 计算器

    from tkinter import * master = Tk() frame = Frame(master) frame.pack(padx=10,pady=10) v1 = StringVar ...