[Prodinner项目]学习分享_第四部分(完结篇)_Controller层(控制器)
Controller作用:
数据从数据库查询出来后,通过一定的业务逻辑,筛选出来一个结果集,我们最终的目的是要将这个结果集在页面中显示的。
Controller就是起到这个作用,将业务逻辑层的结果集调出来,然后通过Model,或者Json的方式返回到View(页面)里。
1.我们需要创建一个Conroller,继承封装好的BaseController.

2.将之前写好的PersonService实例化。

3.获取结果集。
-PersonService里有CrudService封装好的,增删改查常用方法,也有IsUnique这种我们在第三节自定义的方法。

4.将结果集返回到页面
-因为数据传递,现今JSON方法比较流行,这里就挑Json讲,其他的方法也有,可以自己试一下。

5.View中接受
-在View中调用后台Controller的Action,这里推荐使用Ajax方法,下面可以看到,
通过Ajax,如果传递一个userid值,他就可以判断,该用户是否为唯一。
如果不传递参数将返回所有用户的JSON集。

6.Ajax调用Controller方法
-我这里用的是Extjs封好的Ajax,也可以用JQuery的。
Ext.Ajax.request({
url: "Person/Index", //Action路径
async: false,
method: 'POST',
datatype: "text",//数据类型
params: {
userid: uid //传递的参数
},
success: function (result) { //返回的结果自动放在resut里面了
alert(result.responseText);
},
failure: function () {
alert("failure")
}
});
7.到这里就可以将结果集,按你自己设计好的方式,在页面显示啦。
8.Prodinner有好多设计好的页面,表格,按钮等,大家可以看着官方文档,都试一遍。
-因为我现在项目中应支持IE8,但Prodinner的一些页面设计,不兼容IE8,所以我的学习就到这里啦,
以后有机会用到,那个时候再深入了解吧。
[Prodinner项目]学习分享_第四部分(完结篇)_Controller层(控制器)的更多相关文章
- [Prodinner项目]学习分享_第一部分_Model层
事先声明一下,小弟我是菜鸟一个,在研究大半天之后,基本会开发一些简单的功能了,特此分享一下,也为自己做一个笔记. 项目简介: MVC4 , EF5 , Code First , 多层架构 开发工具:V ...
- [Prodinner项目]学习分享_第三部分_Service层(业务逻辑层)
前两节讲到怎样生成一个Model和怎样将Model映射到数据库,这一节将讲到业务逻辑层,也就是Service层. 1.Prodinner架构已经构建好的,基本的增删改查. 假设,我现在想操作第二节中讲 ...
- [Prodinner项目]学习分享_第二部分_Entity到DB表的映射
1.单纯映射 基本语法为 modelBuilder.Entity<InsType>().ToTable("TB_InsType"); 2.一对多映射(表关系) 实体类B ...
- .Net基础篇_学习笔记_第四天_关系运算符和逻辑运算符
1.关系运算符 包含:> < <= >= == != 以及bool类型中的true和false. 2.逻辑运算符 与 && 或 || 非 ! 注 ...
- .Net基础篇_学习笔记_第四天_加加减减
using System.Linq; using System.Text; using System.Threading.Tasks; namespace 第四天_加加减减 { class Progr ...
- .Net基础篇_学习笔记_第四天_switch-case02
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- .Net基础篇_学习笔记_第四天_switch-case
swith-case 用来处理多条件的定值的判断. 语法: switch(变量或者表达式的值) { case 值1:要执行的代码: break: case 值2:要执行的代码: break: case ...
- .Net基础篇_学习笔记_第四天_if结构
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- salesforce零基础学习(八十四)配置篇: 自定义你的home page layout
当我们进入salesforce系统或者切换app后,默认第一个看到的就是home页面.home页面简单的来说可以包括左侧(narrow component)和右侧(wide component)两部分 ...
随机推荐
- IIS7下的伪静态配置
某个项目是PHP的,本地是Apache + PHP + MYSQL,服务器上的环境是IIS + PHP + MYSQL,开发完成准备部署到服务器上发现伪静态无法使用,原因是IIS不能解析.htacce ...
- Rewrite服务器和robots文件屏蔽动态页面
Rewrite服务器使用robots文件屏蔽动态页面.
- lua MVC框架 Orbit初探
介绍 http://keplerproject.github.io/orbit/ Orbit是lua语言版本的MVC框架. 此框架完全抛弃CGILUA的脚本模型, 支持的应用, 每个应用可以卸载一个单 ...
- EBS R12.2应用层启动脚本的执行过程
$ pwd /app/oracle/apps/VIS/fs1/inst/apps/VIS_erptest/admin/scripts $ ./adstrtal.sh apps/apps You are ...
- SD卡读写遇到的一些函数
SD_SPI_ReadWriteByte(0XFF): 你的数据线写0xff,就是一直保持高,clk就有了8个,可以说只是发送的数据是0xff,这又不是SD的命令,但是它必须要靠控制器提供时钟才能工作 ...
- JS---------IIFE(Imdiately Invoked Function Expression 立即执行的函数表达式)
+function($){}(jQuery); 今天看到js代码里面有这个格式的代码,不知道啥意思,就去查了一下,我也是js小白.首先前面的+号,这个不是固定非要写+号,只要写一级运算符都可以.目的是 ...
- IOS基础面试题
最近离职了,找工作,光会做项目,对基础不熟,今天就总结了一点面试题. 废话不多说,上题吧: 1.objective-c中的数字对象都有哪些,简述它们与基本数据类型的区别是什么. 基本类型和C一样,主要 ...
- Android系统下,用adb实现自动获取应用性能数据
[自动化测试模式] 支持以adb shell命令的形式启动和运行.需要注意的是,office系列软件可能会更改命令中的字符,导致命令不可用!请手工输入命令,或从附带的command.txt文本中复制. ...
- Json.net对于导航属性的处理(解决对象循环引用)
对于两张表A.B多对多的关系中,A的导航属性中有B,B的导航属性中有A,这样Json.net对A或者B对象序列化时会形成死循环 所以对于导航属性要加标签 首先在A.B实体类工程(Model)中引用Js ...
- ubuntu 中增加鼠标右键菜单,为Windows 的exe 程序快速增加桌面快捷键
#!/bin/bashmyfile=$NAUTILUS_SCRIPT_SELECTED_FILE_PATHSmyfilename=${myfile##*/}myfilename=${myfilenam ...