未从MVC站点中的捆绑包部署CSS文件
捆绑包对我来说是新的,但在我的_layout.cshtml文件中,我有以下内容:未从MVC站点中的捆绑包部署CSS文件,css,asp.net-mvc,asp.net-mvc-4,Css,Asp.net Mvc,Asp.net Mvc 4,捆绑包对我来说是新的,但在我的_layout.cshtml文件中,我有以下内容: @Styles.Render("~/Content/css") bundles.Add(new StyleBundle("~/Content/css").Include( "~/Content/bootstrap.css", "~/Content/site.css", "~/Content/Portal.css")); 在App_Start\BundleConfig.cs文件中,我有以下
@Styles.Render("~/Content/css")
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/site.css",
"~/Content/Portal.css"));
在App_Start\BundleConfig.cs文件中,我有以下内容:
@Styles.Render("~/Content/css")
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/site.css",
"~/Content/Portal.css"));
当我通过从Visual Studio启动在localhost上查看站点时,会插入所有样式,如下所示:
<link href="/Content/bootstrap.css" rel="stylesheet"/>
<link href="/Content/site.css" rel="stylesheet"/>
<link href="/Content/Portal.css" rel="stylesheet"/>
然而,当我部署到测试服务器时,portal6.css文件不包括在标记中,事实上甚至没有复制到我的发布目录中。我手动将该CSS文件复制到内容文件夹中,但包似乎没有引用它
有人知道问题是什么吗
…事实上甚至没有复制到我的发布目录中。我手动将CSS文件复制到内容文件夹
听起来这只是在项目文件属性中将项目文件的生成操作
标记为内容
——否则,它将不会像您所注意到/声明的那样“发布”
要查看portal.css
属性:
- 选择文件
- 然后F4或ALT+ENTER
- 在属性选项卡/窗口中,检查
是否设置为生成操作
(很有可能设置为内容
已被“手动复制”)无
需要“发布”的某些css文件(font awesome.css)的示例视图
额外注意:最后,还要注意,如果您的web.config设置debug=false,包将构建默认文件名“file.css”。如果debug=true,这将指示bundle查找“file.min.css”版本,并将获取缩小文件版本。因此,如果CSS文件内容不同或包含与原始CSS文件不匹配的CSS类,这也会导致意外的结果
Portal.css
或portal6.css
?标记中根本没有链接节点?@StephenMuecke。讨论中的CSS文件是Portal.CSS-可能是大写的P引起了问题?@skylerustin我得到了site.CSS和bootstrap.CSS的两个链接节点,但Portal没有。css@Styles.Render(“~/Content/css”)在测试环境中根本没有在标记中生成任何节点吗?