c# - 如何使用原始包集合到区域 MVC5

标签 c# jquery css asp.net-mvc asp.net-mvc-areas

我有一个 MVC5 网站,其中有一个区域称为 Freemium。我为我的整个网站使用了 bundle 集合,一切都很好,除了我打开免费增值区的时候。我所有的 jquery 和 css 文件都没有加载!我试图找出问题所在,我找到的唯一解决方案是将所有 css 和 jquery 文件复制到 area 文件夹中,但我不想这样做,因为复制和粘贴的文件始终相同。

所以当我用

渲染 css 和 js 时
@Styles.Render("~/Freemium/Content/metro-ui/css") 

我得到错误:

The controller for path '/Freemium/Content/metro-ui/css' was not found or does not implement IController. Stack trace: at System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext requestContext, Type controllerType) at System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName) at System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory) at System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext, AsyncCallback callback, Object state) at System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContext httpContext, AsyncCallback callback, Object state) at System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)**

这是我需要在免费增值领域工作的 bundle 。

private static BundleCollection SetMetroUIFreemiumBundles(BundleCollection bundles)
    {
        // CSS
        bundles.Add(new StyleBundle("~/Freemium/Content/metro-ui/css/metrocss")
            .Include("~/Content/metro-ui/css/metro-bootstrap.css"
            , "~/Content/metro-ui/css/metro-bootstrap-responsive.css"
            , "~/Content/metro-ui/css/iconFont.min.css"));

        // Scripts
        bundles.Add(new ScriptBundle("~/Freemium/Scripts/metro-ui/metrojs")
            .Include("~/Scripts/metro-ui/jquery.ui.widget.js"
            , "~/Scripts/metro-ui/metro.min.js"));

        return bundles;
    }

最佳答案

创建MVC站点已经有一段时间了,但不应该是

@Styles.Render("~/Freemium/Content/metro-ui/css/metrocss")

Render("path") 路径应该匹配 new StyleBundle("path")

关于c# - 如何使用原始包集合到区域 MVC5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25586971/

相关文章:

c# - Getkey 和 value by Except on just value

c# - HtmlSanitizer + 带有 DI 的 ASP.NET Core 2

javascript - jquery动态创建数组

javascript - 如何在javascript中获取输入文本值

jquery - 为每个评论创建一个单独的边框 Django Css

php - Google 翻译无法更改语言?

javascript - 防止正文滚动(移动、 native 浏览器)

c# - 使用 C# 在 mysql 中插入多行的最佳方法?

c# - MVVM WPF 应用程序开发人员技能集

html - CSS :not selector is not applying correctly