zoukankan      html  css  js  c++  java
  • [转]教你一招

    本文转自:http://www.cnblogs.com/wucf2004/p/nopcommerce-area.html

    asp.net mvc里面的area是什么,点击这里查看

     如果在nopcommerce里面加入类似admin的area,步骤如下:

    1、新建一个mvc空项目MvcApplication1,位置放在Nop.Web下面,添加一个类MvcApplicationAreaRegistration.cs用于注册area,内容如下:

    复制代码
    using System.Web.Mvc;
     
    namespace MvcApplication1
    {
        public class MvcApplicationAreaRegistration : AreaRegistration
        {
            public override string AreaName
            {
                get
                {
                    return "MvcApplication1";
                }
            }
     
            public override void RegisterArea(AreaRegistrationContext context)
            {
                context.MapRoute(
                    "MvcApplication1_default",
                    "MvcApplication1/{controller}/{action}/{id}",
                    new { controller = "Home", action = "Index", area = "MvcApplication1", id = "" },
                    new[] { "MvcApplication1.Controllers" }
                );
            }
        }
    }
    复制代码

    2、修改MvcApplication1/Views/_ViewStart.cshtml,内容如下:

    @{
        Layout = "~/MvcApplication1/Views/Shared/_Layout.cshtml";
    }

    如果不修改的话会提示找不到view的。 3、添加一个HomeController和对应的视图,这里不再详细说明。 4、修改MvcApplication1输出路径,改为:..in,要不然是找不到dll的。 5、删除Global.asax文件,删除web.config里面不需要的内容,可参考admin下面的config文件。 6、最后关键一步,修改Nop.Web.FrameworkThemesThemeableVirtualPathProviderViewEngine.cs的方法GetPath,添加如下内容:

    复制代码
    if (!string.IsNullOrEmpty(areaName) && areaName.Equals("mvcApplication1", StringComparison.InvariantCultureIgnoreCase))
                {
                    //admin area does not support mobile devices
                    if (mobile)
                    {
                        searchedLocations = new string[0];
                        return string.Empty;
                    }
                    var newLocations = areaLocations.ToList();
                    newLocations.Insert(0, "~/MvcApplication1//Views/{1}/{0}.cshtml");
                    newLocations.Insert(0, "~/MvcApplication1//Views/{1}/{0}.vbhtml");
                    newLocations.Insert(0, "~/MvcApplication1//Views/Shared/{0}.cshtml");
                    newLocations.Insert(0, "~/MvcApplication1//Views/Shared/{0}.vbhtml");
                    areaLocations = newLocations.ToArray();
                }
    复制代码

    重新编译测试一下吧,地址http://localhost:2619/MvcApplication1/Home。

    分享是一种美。版权所有,转载请注明出处 http://www.nopchina.net/

     
     
  • 相关阅读:
    springboot2 + prometheus + grafana 监控整合
    vs code 快捷键总结
    java8 concurrecy
    java8 localdatetime timestamp 转换
    有意思的网站
    评价搜索引擎质量
    转载一篇文章
    csdn 站点使用
    百度站点平台
    好的文章聚合站点
  • 原文地址:https://www.cnblogs.com/freeliver54/p/6213574.html
Copyright © 2011-2022 走看看