Microsoft Web 开发平台

MVC架构

目标:实现应用程序模块之间的隔离(也就是分离关注点)

好处:开发时-单个组件不依赖与其他组件,可以独立部署,也可以被替换;减少了组件之间的影响

测试时-测试代码可以替换真实的产品组件;减少直接调用数据库的次数;简化提升了系统的真实测试流程

维护时-影响小

把应用程序分割成3层:视图、模型、控制器

MVC4 新特性

异步控制器:避免长时间独占资源、更好的处理耗时长的请求。

显示模式:提供了针对不同设备的显示方式。

绑定与压缩:提高用户体验,减少各种资源的下载时间。

创建创建项目的模板介绍 

空模板:创建MVC4网站的架构(包含文件夹结构,以及一些必要的程序集引用)

基本模板:按照MVC4的规则创建了文件夹结构

互联网应用程序模板:对空模板进行了扩展,包含简单的默认控制器、账户控制器一起一些基本逻辑代码和默认视图文件

以太网应用程序模板:与互联网模板很像,使用了基于Windows的验证机制(企业局域网完全验证的所选机制)

移动应用程序模板:是互联网应用程序模板的一个变种。针对移动设备进行了优化。

Web Api:是互联网应用程序模板的一个变种。预定义了Web Api (一种轻量级的RESTful HTTP Web服务框架)控制器

概念

惯例优先原则:遵循特定的惯例而不是配置文件来创建项目

程序运行

路由

  配置路由

 控制器

响应用户的输入,并协调模型、视图以及数据访问层。

操作结果:根据需要,自由决定

Content():返回文本类型的ContentResult,比如“Hello,world!”

File():返回文件类型的内容FileResult,比如PDF

HttpNotFound():返回包含404HTTP状态码的HttpNotFoundResult

JavaScript():返回包含JavaScript内容的JavaScriptResult,比如“function hello(){alert('Hello,World!');}”

Json():返回JSON格式数据的JsonResult,比如“{“Message”:"Hello,World!"}”

PartialView():返回包含部分视图内容的PartialViewResult

Redirect():返回一个包含302跳转状态值RedirectResult,跳转到给定的URL上

RedirectToAction()和RedirectToRoute():与Redirect()类似,只有框架可以动态查询路由引擎来确定外部的URL。

View():返回渲染视图的ViewResult

 操作参数:拥有“模型绑定”功能,获取参数不需要Request对象解析了,直接对应函数参数就行了。

 操作过滤器:在特定的点注入逻辑,帮助处理贯穿程序中各个模块的横切关注点问题

轻量级权限管理系统——MVC基础的更多相关文章

  1. 轻量级权限管理系统(renren-security)

    renren-security是一个轻量级权限管理系统,其核心设计目标是开发迅速.学习简单.轻量级.易扩展.使用renren-security搭建项目,只需编写30%左右代码,其余的代码交给系统自动生 ...

  2. 以WCF安全认证方式调用通用权限管理系统获取基础信息资料

    在B/S开发中,涉及到获取系统基础资料的问题,因为是在不同平台下的开发,采用了WCF方式获取. 下面是一个调用通用权限管理系统(吉日嘎拉)基础信息资料的一个demo供参考 调用原理图: web.con ...

  3. 零开始:NetCore项目权限管理系统:基础框架搭建

    有兴趣的同学可以一起做 喜欢NetCore的朋友,欢迎加群QQ:86594082 源码地址:https://github.com/feiyit/SoaProJect 新建一个空的解决方案,建立对应的解 ...

  4. 使用MiniProfiler跟踪MVC + EF + Bootstrap 2 权限管理系统的性能消耗

    安装MiniProfiler 在MVC + EF + Bootstrap 2 权限管理系统入门级(附源码)文章中下载了它的源码,调试模式下打开一个页面都要再2.5秒以上,所以使用MiniProfile ...

  5. MVC + EF + Bootstrap 2 权限管理系统入门级(附源码)

    MVC .EF 学习有大半年了,用的还不是很熟练,正好以做这样一个简单的权限管理系统作为学习的切入点,还是非常合适的. 开发环境: VS 2013 + Git + MVC 5 + EF 6 Code ...

  6. ABP+AdminLTE+Bootstrap Table权限管理系统第二节--在ABP的基础做数据库脚本处理

    返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 第一点,上一篇文章中我们讲到codefirst中一些问题包括如图,codefirst在每次执行命令的时候会生成新的 ...

  7. 基于Extjs 4.2的通用权限管理系统,通用后台模板,EF+MVC+Extjs 4.2

    基于Extjs 4.2的通用权限管理系统,通用后台. 我们的宗旨:珍爱生命,拒绝重复!Don't Repeat Yourself!!! 本案例采用EntityFramework+MVC4.0+Extj ...

  8. ASP.NET MVC通用权限管理系统(响应布局)源码更新介绍

    一.asp.net mvc 通用权限管理系统(响应布局)源码主要以下特点: AngelRM(Asp.net MVC)是基于asp.net(C#)MVC+前端bootstrap+ztree+lodash ...

  9. ASP.NET MVC 通用角色权限管理系统

    RightControl 介绍 .NET 通用后台角色权限管理系统,已完成.项目地址:http://106.14.77.184/Admin/Login 码云地址:https://gitee.com/L ...

随机推荐

  1. linux下通过源码安装git

    1.移除旧版本git [root@Git ~]# git --version ## 查看自带的版本git version 1.8.3.1 [root@Git ~]# yum remove git ## ...

  2. ABAP术语-Business Object Builder

    Business Object Builder 原文:http://www.cnblogs.com/qiangsheng/archive/2008/01/09/1031357.html Tool fo ...

  3. [NodeJs系列][译]理解NodeJs中的Event Loop、Timers以及process.nextTick()

    译者注: 为什么要翻译?其实在翻译这篇文章前,笔者有Google了一下中文翻译,看的不是很明白,所以才有自己翻译的打算,当然能力有限,文中或有错漏,欢迎指正. 文末会有几个小问题,大家不妨一起思考一下 ...

  4. js 判断两个时间相差的天数

    judgeDay(sDate1, sDate2) { const sDate1 = `${new Date(sDate1).getFullYear()}-${new Date(sDate1).getM ...

  5. (四)启用HTTPS

    安全规范中有一条是要求尽量使用https而弃用http(新Chrome将标记非HTTPS网站为不安全),其实启用https和之前的ipv6改造一样,并不是什么高难度或者工作流繁多的的改造,只需将中间件 ...

  6. Hadoop Eclipse 插件制作以及安装

    在本地使用Eclipse调试MapReduce程序,需要Hadoop插件,笔摘记录下制作安装过程. 准备工作(hadoop-2.6.0为例): 搭建好Hadoop环境 下载Hadoop安装包,解压到某 ...

  7. 某CTF收集的Mysql爆表、爆字段语句

    Mysql特性 获取数据库名未知函数可爆数据库名 FUNCTION youcanneverfindme17.a does not exist 获取表名and linestring(pro_id)    ...

  8. 接口和lambda表达式笔记

    接口 接口是双方,即服务提供方和想让它们的对象对服务是可用的那些类,之间约定的一种机制. 声明一个接口 public interface IntSequence{ //不提供实现,则该方法为抽象方法, ...

  9. 前端面试题目汇总摘录(HTML 和 CSS篇)

    温故而知新,保持空杯心态 HTML 和 CSS 你做的页面在哪些浏览器测试过?这些浏览器的内核分别是什么 浏览器名称 内核 IE trident Firefox(火狐) gecko Safari we ...

  10. 关于PHP性能提升踩过的一些坑

        性能这个东西,在网站规模到达一定程度后,会是一个永恒的主题.关于这方面,本人有一些拙见,现在拿出来,大家一起探讨下.     1.编码过程中,传递参数时,尽量少使用‘引用传参’.这是一个巨坑啊 ...