第一二章 项目搭建与控制器
程序员文章站
2024-02-16 10:45:52
...
开发环境: VS2013
服务器要求:framework 4.5
官方教程: msdn
一、创建 ASP.NET MVC 5 应用程序
1.1 创建项目, 名称: MvcMusicStore (注意:没有单独的 MVC 项目类型, 两者合并了)
1.2 选择模板及相关选项。将创建一个WEB应用程序和一个单元测试。
1.3 创建好的项目的目录结构如下:
1.4 默认的*目录
目录 | 用途 |
/Controllers | 保存处理URL请求的Controller类 |
/Models | 保存那些表示和操纵数据以及业务对象的类 |
/Views | 保存那些负责呈现输出结果(如HTML)的UI模板文件 |
/Scripts | 保存 javascript 文件( .js ) |
/fonts | 保存BootStrap 模板系统包含的一些自定义WEB字体 |
/Content | 保存CSS、图像和其他站点内容,而非脚本 |
/App_Data | 存储要读取、写入的数据文件 |
/App_Start | 保存一些功能的配置代码,如路由、捆绑和WEB API |
二、控制器
2.1 尝试修改:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MvcMusicStore2.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult About()
{
//ViewBag.Message = "Your application description page.";
ViewBag.Message = "I like cake!";
return View();
}
public ActionResult Contact()
{
ViewBag.Message = "Your contact page.";
return View();
}
}
}
F5 运行,
http://localhost:58942/Home/About
点击 About 后:
2.2 添加控制器: StoreController
更改一下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MvcMusicStore2.Controllers
{
public class StoreController : Controller
{
/*
// GET: Store
public ActionResult Index()
{
return View();
}*/
// GET: Store
public string Index()
{
return "Hello from Store.Index()";
}
public string Browse(string genre)
{
string message = HttpUtility.HtmlEncode("Store.Browse, Genre = " + genre);
return message;
}
public string Details(int id)
{
string message = "Store.Details, ID = " + id;
return message;
}
}
}
F5 浏览下列URL
/Store
/Store/Browse?genre=Disco
/Store/Details/5
约定优于配置, 虽然没有配置什么, 但根据约定, 控制器得到了相关的参数及ID。
下面是如何确定网站的起始页
方法一:
方法二: 更改 App_Start 目录下的 RouteConfig.cs 文件
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace MvcMusicStore2
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Store", action = "Details", id = 5 }
);
}
}
}
两者同时设置时, 方法一要优先于方法二
推荐阅读
-
第一二章 项目搭建与控制器
-
前端MVC Vue2学习总结(七)——ES6与Module模块化、Vue-cli脚手架搭建、开发、发布项目与综合示例
-
django项目搭建与Session使用详解
-
vue-cli 3.0 版本与3.0以下版本在搭建项目时的区别详解
-
无聊的切图--项目搭建与环境配置
-
从零开始搭建前后端分离的NetCore2.2(EF Core CodeFirst+Autofac)+Vue的项目框架之八MemoryCache与redis缓存的使用
-
Vue2.0开发环境与脚手架项目搭建批处理脚本文件
-
第八天 黑马十次方 十次方的需求分析、十次方的系统设计以及RESTful、项目的前 期准备工作、十次方父模块与公共模块的搭建、基础微服务-标签CRUD的功能
-
asp.net core 一个中小型项目实战的起手式——项目搭建与仓储模式下的持久层创建(1)
-
cxf环境搭建与第一个项目