主页搭建——MVC

  首先,新建一个MVC项目,由于我的服务器上只安装了.Net4.0 因此选择4.0的Framework。项目建立完成后,我们可以在右边看到这样的目录结构。

其中Global.asax为整个程序的入口

            AreaRegistration.RegisterAllAreas();
            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);        

  这四个配置文件的注册分别对应到了App_Start中的四个文件

Bundle的作用是将你所使用的css或者js文件合并到一起,解决浏览器只能同时加载6个链接的限制,加快网站的访问速度。

Filter的作用是定义过滤器,在每个action前面可以加上限定的filter,例如[HttpPost],限制这个action只能通过post方式访问。

Route则是网站访问的路由规则。

            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );

  url中显示了访问方式。默认为website/Home/Index

  controller对应Controlllers文件夹下的Controller,action则对应每个controller中的动作,id则为要传入的参数。

我们可以看到controller和view的对应关系如下

每个controller对应一个view中的文件夹,每个方法对应文件夹中的cshtml页面。

这是一个简单的返回主页视图的方法,我们可以通过ViewBag与cshtml页面进行数据交互。(X-real-ip为我在nginx中定义的访问IP的header)

在对应的index.cshtml中,我们同样可以使用@ViewBag.ip获取传过来的数据。

当我们运行网站的时候我们的ip就会显示在<h1>标签上了

在Views文件夹中,还有一个_Layout.cshtml

前面加 _  表示不能被直接访问,layout.cshtml则为模板页,我们可以在这里定义整个网站的header以及footer,同时引用所有的css以及js文件,再通过@RenderBody()加载中间内容。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值