博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mvc教程
阅读量:5317 次
发布时间:2019-06-14

本文共 2746 字,大约阅读时间需要 9 分钟。

                          第一章 mvc概述

 

入门

 

需要安装 Visual Studio 2008 或 Visual Web Developer 2008 Express 来构建 ASP.NET MVC 应用程序。还需要下载 ASP.NET MVC Framework。

如果没有 Visual Studio 2008,可以从下面的网址下载 90 天试用版:

另外,也可以使用 Visual Web Developer Express 2008 创建 ASP.NET MVC 应用程序。如果决定使用 Visual Web Developer Express,则必须安装 Service Pack 1。可以从以下网址下载带有 Service Pack 1 的 Visual Web Developer 2008 Express:

安装 Visual Studio 2008 或 Visual Web Developer 2008 后,需要安装 ASP.NET MVC Framework。可以从以下网址下载 ASP.NET MVC Framework:

 

 

 

mvc(model-view-controller)   (框架)模型-视图-控制器  同于表示一种软件架构模式。它把软件系统分为三个基本部分模型 (model)存储数据的组件(与领域模型不同)

视图(view)根据model数据进行 内容展示的组件 --获取model的状态

控制器(controller) 接收并处理用户的指令 操作model  .  和model 和 view 协作的 作用

并不只是 业务逻辑的组件 。

表现模式: presentation pattern /ui

 

两种分离:

view和数据(model)分离

-能够 不同的view对model进行展示

- 分离 可视和 不可视 的组件。 能够对model 进行对立测试(view到model单向引用)

view 和 controller 分离

-分离  表现逻辑和 具体展示。--能够进行对立的测试

mvc两种变种:

--observer模式

--MVP模式--事件驱动。

与三层架构的比较

view-- UI Layer

Controller -- BL Layer

Model -DA Layer

MVC  表现模式 :presentation pattern-- 独立关系

优点。 容易分离 。三者 是 协作的关系 

三层架构  架构模式-- 从上 到下  --  依赖关系 --双向引用 --难以分离

没有 可比性。

asp.net mvc 特点

-- 一切都可以 替换

-- viewengine 视图引擎

-- action filter 

--一切都是可测试的

--公开源代码

-- 可以修改

-- 不 可 重新发布

 

asp.net mvc 的组件协作

--url routing   

--asp.net mvc使用 url进行 驱动 

-- 根据程序中制定的规则 从url中:

  --确定 controller 名

  -- 确定action 名

  -- 生成其余各种参数

 article/show/2008/4/10/13411

{controller}{action}{year}{month}{day}{id}

 

--controller&action  executing

-- view rendering

LINQ TO SQL

--.NET FRAMEWORK 3.5的ORM框架

  routes.MapRoute(

                "Default",
                
"{controller}/{action}/{id}",
                
new { controller = "Home", action = "Index", id = 0 },
                
new { action = @"^\w+", id = @"^\d+" }
            );
            routes.MapRoute(
                
"Blog",
                
"Archive/{date}",
                
new { controller = "Blog", action = "Archive" },
                
new { date = @"^\d{4}-\d{2}-\d{2}" }
            );
            routes.MapRoute(
                
"Car",
                
"Car/{make},{model}",
                
new { controller = "Car", action = "Index" },
                
new { date = @"(acural|bmw)" }
            );
            routes.MapRoute(
                
"Book",
                
"Book/Add/{name}",
                
new { controller = "Book", action = "Add" },
                
new { httpMethod = "POST" }
            );
            routes.MapRoute(
                
"CatchIt",
                
"Product/{*values}",
                
new { controller = "Product", action = "Index" }
           );

再浏览器地址栏 中输入的  url 和 应用程序中的文件 不存在 对应的关系。 再asp.net Mvc 应用程序 中,url web forms 应用程序关注的 是内容,相反

mvc 应用程序  的程序逻辑

 

URL 路由(routing) 的asp。net mvc 功能映射到 控制器的操作. URL 路由  - u使用 路由表 处理 请求。  第一次 启动 创建。

 

路由表 global。asax 文件中设置。

默认的 设置如下

 

public static void registeroutes( routecollection routes)

{

routes.ignoreroute("  {resource}.axd /{*pathinfo}");

routes.maproute{

"default",

"{controller}/action/{id}",

new {controller ="Home" ,action ="index" ,id=""};

}

 

protected void application start()

{

registerrouters{routetable.routes};

}

 

/Product/Details/3

此 URL 被解析为如下三个部分:

Controller = ProductController

Action = Details

Id = 3

 

 

 

 

}

转载于:https://www.cnblogs.com/weihengblogs/archive/2013/01/28/2880507.html

你可能感兴趣的文章
判断是否为空然后赋值
查看>>
zabbix监控日志文件
查看>>
正则表达式
查看>>
pip install torch on windows, and the 'from torch._C import * ImportError: DLL load failed:' s...
查看>>
java基础(一):我对java的三个环境变量的简单理解和配置
查看>>
arcgis api 4.x for js 结合 Echarts4 实现散点图效果(附源码下载)
查看>>
YTU 2625: B 构造函数和析构函数
查看>>
apache自带压力测试工具ab的使用及解析
查看>>
C#使用Xamarin开发可移植移动应用(2.Xamarin.Forms布局,本篇很长,注意)附源码
查看>>
jenkins搭建
查看>>
C#中使用Split分隔字符串的技巧
查看>>
eclipse的调试方法的简单介绍
查看>>
加固linux
查看>>
IPSP问题
查看>>
10.17动手动脑
查看>>
WPF中Image显示本地图片
查看>>
Windows Phone 7你不知道的8件事
查看>>
实用拜占庭容错算法PBFT
查看>>
java的二叉树树一层层输出,Java构造二叉树、树形结构先序遍历、中序遍历、后序遍历...
查看>>
php仿阿里巴巴,php实现的仿阿里巴巴实现同类产品翻页
查看>>