ASP.NET MVC(二)

时间:2022-07-21 22:42:44

休息一下还是继续ASP.NET MVC 的基础知识。

这篇文件我想和大家一起熟悉下ASP.NET MVC项目的目录结构及dll。

1. ASP.NET MVC 项目的目录结构

ASP.NET MVC(二)

App_Data:  存放数据文件

Content: 建议放一些资源文件,例如 Css, 图片等,当然你也可以选择不放任何内容

Controllers : 建议将Controllers类都放到此目录下,便于管理。

Controller 类命名必须以Controller结尾

Models: 建议存放业务实体、数据访问层的类。

Scripts: 存放JS文件

Views: 在默认情况下,所以的View文件都必须放到这个目录中,每个Controller对应一个子目录,一般每个Action对应一个页面。

Views目录下还有一个Shared的子目录,这个子目录是用于存放一些共享的view的,例如Error.aspx和Site.Master。Controller在Views\ControllerNmae 中找不到指定的view的时候,会到Shared中去寻找。

2. Asp.NET 核心 DLL

ASP.NET MVC(二)

System.Web.Routing :URL路由。将一个URL路由到对应的Controller上靠的就是这个。是在HttpModule里面处理的。

System.Web.Extensions :这个是ASP.NET AJAX的。

System.Web.Mvc: ASP.NET MVC最主要的程序集。在CodePlex上放出源代码的就是这个DLL。

System.Web.Abstractions :这个程序集是一些相关的基类来的。例如HttpContextBase、HttpRequestBase 等等。

在VS2008中,可能需要手动添加DLL文件,这里我详细介绍System.MVC

打开 HomeController, 可以看到 using Sytem.Web.Mvc , 也就是当我们创建Controol 类时,会自动为我们添加引用。但是它是如何添加的呢?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc; namespace My_MVC.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
//返回View给客户端,如果View不带参数,就是返回和Action同名的View
// 相当于 return View("Index");
return View();
}
}
}

HomeController

HomeController 继承 Controller, F12 进入Controller 类,可以看到

#region 程序集 System.Web.Mvc.dll, v3.0.0.0

// E:\NET\classromm_test\My_MVC\packages\Microsoft.AspNet.Mvc.3.0.20105.1\lib\net40\System.Web.Mvc.dll

#endregion

仔细查看路径,很熟悉是吧,这就是项目的所在路径。现在就很清楚了,当我们创建MVC 项目时,会自动将Mvc所需要的DLL文件拷贝到当前项目中,并自动添加引用。

好了,匆匆结尾了,想想中午吃啥