我有一个名为Freemium的MVC5网站。我在我的整个网站上使用了捆绑集合,除了打开免费增值区域外,一切都很顺利。我的所有jquery和css文件都没有加载!我试图找出问题,我找到的唯一解决方案是将所有css和jquery文件复制到区域文件夹中,但我不想这样做,因为这将始终是相同的文件副本和放大器。糊。
所以当我用
渲染css和js时@Styles.Render("~/Freemium/Content/metro-ui/css")
我收到错误:
未找到路径'/ Freemium / Content / metro-ui / css'的控制器或未实现IController。 堆栈跟踪: 在System.Web.Mvc.DefaultControllerFactory.GetControllerInstance(RequestContext requestContext,Type controllerType) 在System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext,String controllerName) 在System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext,IController& controller,IControllerFactory& factory) 在System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContextBase httpContext,AsyncCallback回调,对象状态) 在System.Web.Mvc.MvcHandler.BeginProcessRequest(HttpContext httpContext,AsyncCallback回调,对象状态) 在System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.BeginProcessRequest(HttpContext context,AsyncCallback cb,Object extraData) 在System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 在System.Web.HttpApplication.ExecuteStep(IExecutionStep step,Boolean& completedSynchronously)**
这是我需要在免费增值区域工作的捆绑包。
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;
}
答案 0 :(得分:2)
我创建一个MVC网站已经有一段时间了,但不应该是
@Styles.Render("~/Freemium/Content/metro-ui/css/metrocss")
Render("path")
路径应与new StyleBundle("path")
匹配。