• ASP.NET MVC2(Visual Studio.NET 2010)学习之路(三)


    首先要下载一个Visual Studio .NET 2010的安装镜像,本人用的是旗舰版。先欣赏一下界面:

    image

    开始实战了,点击菜单 文件->新建->项目(注意:不是网站,这个项目,有点类似于.NET 2003中的网站),选择ASP.NET MVC2 空 Web 应用程序。

    image

    以下,就是一个最基本的目录结构:

    image

    Content目录,主要放置一些图片、css样式;Controllers目录,用于放置MVC中的Controller;Models目录,用于放置MVC中的Model;Scripts目录,用于放置脚本文件,一般就是JS文件了;Views目录,用于放置MVC中的View。

    展开Views目录,发现有一个Web.config文件,在上边有段话,

    <httpHandlers>
      <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/>
    </httpHandlers>

    这是为了不让用户直接访问Views目录下的所有文件,在之前写的内容中提到过,MVC框架中,对页面的请求,采用了URL重定向。

    我们再看一下Global.asax.cs,

        public class MvcApplication : System.Web.HttpApplication
        {
            public static void RegisterRoutes(RouteCollection routes)
            {
                routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
                routes.MapRoute(
                    "Default", // 路由名称
                    "{controller}/{action}/{id}", // 带有参数的 URL
                    new { controller = "Home", action = "Index", id = UrlParameter.Optional }, // 参数默认值
                    new string[] { "BookLunch.Controllers" }
                );
    
            }
    
            protected void Application_Start()
            {
                AreaRegistration.RegisterAllAreas();
    
                RegisterRoutes(RouteTable.Routes);
            }
        }
    

    大家仔细看RegisterRotes方法中的routes.MapRoute的调用。第二参数,其实就是在定义路由规则。在实际请求中,如只输入http://localhost:2020,那么指定的controller、action、id都为空。这时,将调用第三个参数中指定的数据,也就是说相当于在请求http://localhost:2020/Home/Index。路由规则,也可以自己添加自定义的路由规则,但要遵循从特殊到一般的顺序来写。

  • 相关阅读:
    如何实现Android欢迎页
    创建webapi的简单步骤
    IOS里Request的斗争(上)
    预告:关于接下来的部分,都是番外。
    利用Selenium制作python数据抓取,以及对Selenium资源介绍
    利用openpyxl来读取Excel数据
    在pycharm下快速添加插件
    C# 分布式缓存服务器方案
    2014中国省市数据库
    FormsAuthentication 登录兼容 IE11 保存cookie
  • 原文地址:https://www.cnblogs.com/Berkaroad/p/1774916.html
Copyright © 2020-2023  润新知