工欲善其事,必先利其器——asp.net MVC

it2024-04-23  72

工欲善其事,必先利其器——asp.net MVC

Orchard中用到了许多开源的技术,asp.net MVC是其中之一。要了解Orchard,需要熟练掌握asp.net MVC。

以前对web的开发,多采用webform的形式,mvc用的不多,这里先来学习一下mvc的知识。

首先是路由,普通的查询字符串参数变成了路由参数。Request.QueryString变为了Page.RouteData,另外标记代码可以使用<%$ RouteValue: %>和<%$ RouteUrl: %>的形式。路由的匹配和路由顺序相关,路由有许多内置的类,每个路由类有多个重载的构造函数,可定义路由的默认值、约束、传递数据标记等。还可以通过<asp:routeparameter>的方式使用路由参数。

MVC是一种编程方式,将代码分为3部分:模型、视图、控制器。

VS2013中有asp.net mvc的模板,创建一个mvc项目非常的简单。创建后,会有一些自动创建的目录和文件。App_start/RouteConfig.cs中有定义的路由规则。

首先添加一个控制器,可以选择空的模板;

然后添加一个对应视图;可修改布局文件修改默认的布局。

控制器传递数据可以使用ViewBag动态对象来进行。

可以使用查询字符串,名字对应于控制器中的方法参数。

添加模型,使用Entity Framework;

    新建派生自DbContext的类来管理模型。

    连接字符串(connection string)的名称必须匹配 DbContext 类的名称。

还可以用带视图的模板添加一个新的模型的控制器;系统会自动重建增删改查的文件。

    通过@model可以使用强类型模型。

Edit的重载使用

[HttpPost]

[ValidateAntiForgeryToken]

public ActionResult Edit([Bind(Include="ID,Title,ReleaseDate,Genre,Price")] Movie movie)

如果需要添加搜索项,可以通过修改控制器和视图。

数据库的迁移Migration,使用code first方法进行数据库的更改;NuGet程序包管理器控制台的使用;

模型应用验证规则后,可自动更改到数据库和视图。

还有一些其他的htmlhelper的应用,Token的使用等,需要慢慢使用来熟练。

MVC的了解先到这里,让我们的探索继续……

转载于:https://www.cnblogs.com/_King/p/4938526.html

相关资源:数据结构—成绩单生成器
最新回复(0)