zoukankan      html  css  js  c++  java
  • MVC View与Controller分离

    新建了一个 Separate 解决方案, 如下图

     

    Separate.UI    UI层。 引用 Separate.Home

    Separate.Home 把Home控制器分享到 一个类库中 并引用(System.Web/System.Web.Mvc 程序集)

    UI层 添加 区域 Home,然后就可以删除 其区域 Home 的Controllers 目录了。

    复制 区域注册文件 到 HomeAreaRegistration.cs并修改其命名空间,并删除UI层的 区域注册文件。

    这里的是

    using System.Web.Mvc;
    
    namespace Separate.Home
    {
        public class HomeAreaRegistration : AreaRegistration
        {
            public override string AreaName
            {
                get
                {
                    return "Home";
                }
            }
    
            public override void RegisterArea(AreaRegistrationContext context)
            {
                context.MapRoute(
                    "Home_default",
                    "Home/{controller}/{action}/{id}",
                    new { action = "Index", id = UrlParameter.Optional }
                );
            }
        }
    }

    视图放在 UI层的  Areas/区域名/Views/控制器名  下面。

    然后访问

     

    Separate.Home  创建 AdminController.cs

    using System.Web.Mvc;
    
    namespace Separate.Home
    {
        public class AdminController : Controller
        {
            public ActionResult About()
            {
                return View();
            }
    
        }
    }

    在UI层    Separate.UI /Areas/Home/ Views/ Admin(此文件夹要手动创建) 下添加 视图

    @{
        ViewBag.Title = "About";
    }
    
    <h2>我是Admin下的About</h2>

    然后访问

     

    PS:

    Areas/View/Controller 视图只要放web.config 其视图,就可以被解析

     

    Areas 内的模板 不继承于 主模板

  • 相关阅读:
    centos6和centos7升级openssh7.5脚本
    开通telnet服务,使用telnet登入
    彻底删除kafka的topic以及其中的数据
    redis集群创建
    curl 命令参数
    nginx.conf配置文件详解,白嫖的
    logstash迁移es数据
    es 常用查询
    pl/sql 存储过程
    es查看集群信息命令_cat和_cluster
  • 原文地址:https://www.cnblogs.com/likehc/p/6368414.html
Copyright © 2011-2022 走看看