前言:写这篇随笔的时候,在url上漏写了斜线,找了好久错误,整个人都很不好.#我是猪系列 背景:之前介绍过一篇如何构建 MVC&AJax&JSon示例,这一篇单独讲解如何在View和Action间传递并处理数据. 1,前台HTML代码: <div> <button type="button" id="btn">从视图向控制器中传递数据</button> <p id="info">&l…
我们在asp.net 开发中已经封装了最强大的HttpContext,我们可以在HttpContext中可以获取到几乎任何想获取的东西,也可以在HttpContext写入需要返回客户端的信息.但是这些还远远不能满足一些要求,比如在任何地方可以获取到登录用户的信息等等. 之前获取登录用户的信息基本上都是哪里用到就从session里获取,这样做的缺点很多就不一一说明了. 现在我们通过封装一个WebWorkContext就可以随用随取,不用再次从session.数据库或者缓存中获取了. 1.首先新建类…
ASP.NET MVC WebGrid – Performing true AJAX pagination and sorting FEBRUARY 27, 2012 14 COMMENTS WebGrid is a very powerful HTML helper component introduced with ASP.NET MVC 3 and ASP.NET Web Pages. Despite all its cool features, it is troublesome to…
原文:[ASP.NET MVC] 利用动态注入HTML的方式来设计复杂页面 随着最终用户对用户体验需求的不断提高,实际上我们很多情况下已经在按照桌面应用的标准来设计Web应用,甚至很多Web页面本身就体现为一个单一的页面.对于这种复杂的页面,我们在设计的时候不可以真的将所有涉及的元素通通至于某个单独的View中,将复杂页面相对独立的内容"分而治之"才是设计之道.我们可以借鉴Smart Clent应用的设计方式:将一个Windows Form作为应用的容器(Smart Client Sh…
在web开发中经常会遇到在内部代码中获取Html,这些Html是需要和数据进行一起渲染.并不是直接把Html代码返回给客户端.这样的做法有很多应用场景,例如分页.Ajax一次性获取几段Html片段.生成邮件发送模板.生成Html静态页面等等.比较简单的或者容易想到的做法就是直接拼接Html,当然这肯定不是最合适的做法. 应用场景 1.在分页中,有一种做法是用ajax获取table的html代码和一些分页信息的Json var json = { "table": "<ta…
1   概述 本篇文章主要从操作上简要分析Controller<=>View之间相互传值,关于页面之间传值,如果感兴趣,可参考我另外一篇文章ASP.NET 页面之间传值的几种方式 . Controller=>View:Model,ViewBag,ViewData,TempData,ViewBag=>ViewData,ViewData=>ViewBag,ViewModel,JqGrid,AJAX+第三方插件等: View=>Controller:QueryString,F…
请注明转载地址:http://www.cnblogs.com/arhat 在上一章中,我们把Razor的模板技术给大家介绍了一下,当然模板中还有其他的知识点,这个以后我们还会继续讲解.本章我们主要讨论一下View如何从Action中取得数据.可以说本章所讲的知识起到了一个承上启下的作用,因为Action负责传递数据,View负责显示数据,那么问题就是Action如何把数据传递给View了呢?这就是本章的主要内容. Action把数据传递给View主要有两种方式,一种是“使用弱类型”,一种是“使用…
在MVC架构中,尽管非常多东西和三层非常相似,可是也有非常大的差别.就比方传递数据.在三层架构中,传递数据就仅仅要一层返回,另外一层用同样类型的变量来接收即可了.在MVC中,事实上原理是一样的,Controller中的方法返回Json字符串.然后View来接收.或者反过来,不同的就是这之间须要一个序列化和反序列化的过程. 本文就简介利用Json在View和Controller之间传递数据的一个方面,大致从双方面介绍,一是什么是Json,二是怎样实现. 什么是Json 一.概念 百度百科说:JSO…
本系列目录:ASP.NET MVC4入门到精通系列目录汇总 Unobtrusive Ajax使用方式(非入侵式) 非入侵式,通俗来讲:就是将嵌入在Html中的JavaScript全部取出来,放在单独的 js 文件中,html标签中不要出现任何onclick.onload 等 Unobtrusive Ajax :方便程序员编写简单易于维护的ajax代码(Code is cleaner and easier to maintain). 基本特点 1.网页内容和表单使用纯 HTML: 2.不借助 Ja…
原文地址:http://blog.jobbole.com/85005/ 一.校验 — 表单不是你想提想提就能提 1.1 DataAnnotations(数据注解) 位于 System.ComponentModel.DataAnnotations 命名空间中的特性指定对数据模型中的各个字段的验证.这些特性用于定义常见的验证模式,例如范围检查和必填字段.而 DataAnnotations 特性使 MVC 能够提供客户端和服务器验证检查,使你无需进行额外的编码来控制数据的有效. 通过为模型类增加数据描…
概括的讲,View中的内容可以分为静态和动态两部分.静态内容一般是html元素,而动态内容指的是在应用程序运行的时候动态创建的内容.给View添加动态内容的方式可归纳为下面几种: Inline code,小的代码片段,如 if 和 foreach 语句. Html helper方法,用来生成单个或多个HTML元素,如view model.ViewBag等. Section,在指定的位置插入创建好的一部分内容. Partial view,存在于一个单独的视图文件中,作为子内容可在多个视图中共享.…
我们都知道Asp.net MVC自带的Action可以有多种类型,比如ActionResult,ContentResult,JsonResult……,但是很遗憾没有支持直接返回XML的XmlResult. 当然,你也可以用ActionResult或者ContentResult,然后直接返回xml字符串. 如果我们想要想JsonResult一样来调用和返回xml结果,我们可以自己新建扩展XmlResult,该怎么办呢?不多说,看下面实例: 第一步,扩展System.Web.Mvc XmlReque…
本文转自:http://www.cnblogs.com/willick/p/3410855.html 概括的讲,View中的内容可以分为静态和动态两部分.静态内容一般是html元素,而动态内容指的是在应用程序运行的时候动态创建的内容.给View添加动态内容的方式可归纳为下面几种: Inline code,小的代码片段,如 if 和 foreach 语句. Html helper方法,用来生成单个或多个HTML元素,如view model.ViewBag等. Section,在指定的位置插入创建好…
今天试了下mvc自带的ajax,发现上传文件时后端action接收不到文件, Request.Files和HttpPostedFileBase都接收不到.....后来搜索了下才知道mvc自带的Ajax不支持文件上传,无奈之下只能用其他的方式 第一种方式:通过 jquery的ajaxSubmit --->(先引入jQuery脚本)需要引入jquery.form.min.js(可以通过NuGet下载) 直接上代码 @{ Layout = null; } <!DOCTYPE html> <…
在上篇笔记里我们创建了一个简单的MVC程序 在view中,@Model指的就是MyFirstMvc.Models.IndexModel,我们的提交页面是/Test/Index,当我们输入完数字并按下提交按钮后,程序会去找TestController这个控制器类下的Index方法,并将Model传递给它. 注:input标签中的name属性值必须和IndexModel中的属性名一致,大小写可以不一致,但尽量保持一致. 在controller中,Index方法的return(model)指的是将运算…
在jsp页面中获取action中的值: 1.写一个action类OgnlAction类: 需要注意的地方: 如果在aciton中直接使用ognl表达式,将值存储的值栈中,是不能通过跳转将值传到jsp页面中的.因为result标签的默认跳转方式为请求转发方式,所以这里我们将值存储到并行域中. import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionContext; import com…
不知是什么原因,所有的视图中Ajax,ViewBag之类的都提示为找到上下文(由于换了个版本Vs,猜测应该是Vs的原因),然后顺利在网上找到了解决方案. 给地址链接:https://social.msdn.microsoft.com/Forums/zh-CN/fbe7820e-4f88-4be3-8a68-9b72a805d6e1/vs2015-razormvcrazorviewbag?forum=vstudiozhchs&forum=vstudiozhchs http://stackoverf…
前面的学习,已经做好了简单的登录和主页,涉及了三层软件架构,mvc,easyui的layout.tree.tab.window,sqlite,动软代码自动生成. 下面完善一下登录跳转主页后,在south-layout底部显示登录人,与登录用户名保持一致:再做一个注销按钮,利用到easyui的linkbutton/menubutton. 1. 在后台判断是否登录时,Account控制器中定义了一个session,将登录人的信息保存在session["user"]中, 在(Home)Ind…
1.常用 db.Entry(实体).State = EntityState.Modified;db.SaveChanges(); 2.指定更新 db.Configuration.ValidateOnSaveEnabled = false;db.TUser.Attach(实体);ObjectStateEntry stateEntry = ((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.GetObjectStateEntry(…
1.常用 db.Entry(实体).State = EntityState.Modified;db.SaveChanges(); 2.指定更新 db.Configuration.ValidateOnSaveEnabled = false;db.TUser.Attach(实体);ObjectStateEntry stateEntry = ((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.GetObjectStateEntry(…
1.常用 db.Entry(实体).State = EntityState.Modified;db.SaveChanges(); 2.指定更新 db.Configuration.ValidateOnSaveEnabled = false;db.TUser.Attach(实体);ObjectStateEntry stateEntry = ((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.GetObjectStateEntry(…
  引用js文件包:jquery.form.js可以下载 http://malsup.com/jquery/form/#download <script src="script/jquery.form.js"></script> var formEle = $("#DefaultPicture_Create_Form");//一定要form.find不然与查询页面重复 var defaultPictureName = formEle.find…
@model MvcApplication1.Models.M_Person @using MvcApplication1.Models; @{ ViewBag.Title = "GetData"; var p = ViewData["data"] as M_Person; var p2 = ViewBag.Data as M_Person; } <h2> GetData</h2> <div> 这是从ViewData.Model中…
import java.awt.Rectangle;import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import javax.imageio.ImageIO;import org.apache.commons.io.FileUtils;import org.openqa.selenium.OutputType;import org.openqa.selenium.Point;im…
在开发或者测试环境的数据库中,经常会发现有开发或者测试人员误删除表或者数据的情况,对于开发或者测试库,一般都没有安排定时的备份任务去备份数据库,一方面是由于存储资源有限,不太可能给开发或者测试环境准备大量的存储空间,二是必要性不是很强,开发或者测试库的数据库对象变化太多,通过还原备份的方式又有可能冲掉其最近新建的数据库对象.但是不得不面对的问题就是个别人在执行update或者delete操作的时候“忘了加where条件”这种事情的发生. 这是开发或者测试环境的一个痛点,相信多数人都经历过,当面对…
实战 ASP.NET MVC Web API Web API 框架基于 ASP.NET MVC 框架开发,是一个面向 Http 协议的通信框架.相对于 WCF 而言,Web API 只面向于 Http 协议设计,而且没有 WCF 那么繁琐的配置.相对于直接使用 ASP.NET MVC 来返回 Json 对象的方式而言,Web API 封装了数据的序列化.反序列化,接口.实现都更加简单. 简单地说,如果要向浏览器.移动端提供 Json 数据格式的 API,则应该首选 Web API 作为通信框架.…
大家好,这篇文章,我将向大家介绍ASP.NET MVC的模型视图绑定,ASP.MVC的模型绑定分为两种:一种是动态绑定[Dynamic Binding];还有一种就是强类型绑定[Strongly typed binding]:[PS--上一篇文章:3.怎样将ASP.NET MVC应用程序发布到IIS] 当我们从控制器向视图传递数据的时候,我们会返回一个ViewResult类型的对象,与此同时,我们在视图中可以使用Model对象获取控制器传递过来的数据.Model是WebViewPage泛型类的一…
ASP.NET MVC 引入了 ModelBinder 技术,让我们可以在 Action 中以强类型参数的形式接收 Request 中的数据,极大的方便了我们的编程,提高了生产力.在查询 Action 中,我们可以将 Expression Trees 用作参数,通过自定义的 ModelBinder 动态自动构建查询表达式树,进一步发挥 MVC 的威力,简化编码工作. 先给出本文中使用的 Model: 1 2 3 4 5 6 7 8 public class Employee { public i…
介绍 当涉及到计算机软件的开发时,我想运用所有的最新技术.例如,前端使用最新的 JavaScript 技术,服务器端使用最新的基于 REST 的 Web API 服务.另外,还有最新的数据库技术.最新的设计模式和技术. 当选择最新的软件技术时,有几个因素在起作用,其中包括如何将这些技术整合起来.过去两年中,我最喜欢的一项技术就是设计单页面应用(SPA)的 AngularJS.作为一个微软stack开发者,我也是使用 ASP.NET MVC 平台实现 MVC 设计模式和并进行研究的粉丝,包括它的捆…
将ASP.NET MVC中的form提交改为ajax提交 在ASP.NET MVC视图中通过 @using (Html.BeginForm()) 产生的是form表单提交代码,可以用javascript代码截获这个form提交,改为ajax提交,示例代码如下: 代码来自:http://www.cnblogs.com/dudu/archive/2011/12/07/asp_net_mvc_form_ajax.html $('#form1').submit(function () {    if (…