MVC5 网站开发之五 展示层架构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MVC5 网站开发之五 展示层架构相关的知识,希望对你有一定的参考价值。

展示层由Ninesky.Web项目实现,负责网站内容的显示,项目包含MemberControl两个区域。

Member区域实现网站内容的管理,Control区域实现网站系统管理。结构、功能图如下:

技术分享

 

一、Member区域

1、添加Member区域

技术分享

Ninesky.Web【右键】-> 添加->区域 。

 

技术分享

在弹出的添加区域对话框输入区域名称:Member,完成区域添加

2、添加Home控制器

技术分享

Ninesky.Web->Areas->Member->Controllers【右键】-> 添加->区域 。

 

 

技术分享

选择 MVC 5 控制器 - 空,点击 添加 按钮。

 

技术分享

在“添加控制器”对话框中输入 “HomeController”  点击添加按钮。生成代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace Ninesky.Web.Areas.Member.Controllers
{
    /// <summary>
    /// 主控制器
    /// </summary>
    public class HomeController : Controller
    {
        /// <summary>
        /// 主页面
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            return View();
        }
    }
}

3、为Index方法添加视图

 

技术分享

Index 方法上点右键->添加视图

 

技术分享

添加视图 对话框中,视图名称: Index,模板:Empty,选项勾选使用布局页,点击 添加 按钮,完成视图添加。

 

F5,运行项目,在浏览器中查看一下 http://localhost:52810/Home/Index。嗯,出错了,意思说Home找到两个匹配的控制器。

技术分享

 

4、修改Member区域路由

打开 Ninesky.Web->Areas->Member->MemberAreaRegistration.cs

技术分享

MapRoute添加namespaces参数。图中红框内为添加的代码。

5、修改默认路由

打开 Ninesky.Web->App_Start->RouteConfig.cs

技术分享

MapRoute添加带有“namespaces”的参数。图中红框内为添加的代码。

再次按F5运行,可以看到正常页面。

二、Control区域

Control区域的做法与Member区域方式相同 。

1、添加Control区域

Ninesky.Web【右键】-> 添加->区域 。在弹出的添加区域对话框输入区域名称Control完成区域添加

2、添加Home控制器

Ninesky.Web->Areas->Control->Controllers【右键】-> 添加->区域 。

选择 MVC 5 控制器 - 空,点击 添加 按钮。

在“添加控制器”对话框中输入 “HomeController”  点击添加按钮。

3、为Index方法添加视图

Home控制器Index 方法上点右键->添加视图

添加视图 对话框中,视图名称: Index,模板:Empty,选项勾选使用布局页,点击 添加 按钮,完成视图添加。

4、修改Member区域路由

打开 Ninesky.Web->Areas->Control->ControlAreaRegistration.cs

技术分享

MapRoute添加namespaces参数。图中红框内为添加的代码。

=======================================

代码见:https://ninesky.codeplex.com/SourceControl/latest

代码下载:https://ninesky.codeplex.com 点击SOURCE CODE 点击Download下载源文件。

以上是关于MVC5 网站开发之五 展示层架构的主要内容,如果未能解决你的问题,请参考以下文章

MVC5 网站开发之四 业务逻辑层的架构和基本功能

MVC5 网站开发之六 管理员功能之登录验证和注销

架构之美阅读笔记之五

MVC5+EF+AutoFac+AutoMapper轻型架构

PetShop之业务逻辑层设计 - 《解剖PetShop》系列之五

MVC5 网站开发之三 数据存储层功能实现