我使用VS Express for web创建了一个MVC应用程序.它只会使用VS Express附带的默认内置CSS文件.
示例:如果我修改bootstrap.css文件(更改jumbotron颜色),并从VS本地运行,则更改很明显,但是当我进行Web部署时,这些更改都不明显.我还注意到当我将web.config文件修改为Debug = false时,当我从VS本地运行(以及在Web部署中)时,我所做的CSS更改并不明显.
CSS仍在应用,但我所做的任何更改都不会应用.该网站显示旧的默认jumbotron颜色.如果我在web.config中更改debug = true,那么jumbotron会显示我更新的颜色.当我在网站上部署我的网站时,没有应用任何CSS更改,它仍然使用默认的CSS文件,我甚至在服务器上检查了bootstrap.css,它显示了更新的jumbotron颜色,但是jumbotron仍然是网络上的默认颜色?? 超级混乱.
我做了很多阅读,尝试将以下内容添加到我的web.config中:
<remove name="BundleModule" />
<add name="BundleModule" type="System.Web.Optimization.BundleModule" />
Run Code Online (Sandbox Code Playgroud)
但这并没有解决它.我尝试从我的文件名中删除.css,这解决了当我使用debug = false从VS本地运行它时的问题,但是当我发布网站时,网站根本没有显示CSS样式.这不是缓存问题.它与bundle和debug = false有关,但我不知道是什么.我对web/MVC开发还很陌生.我用NuGet更新了我的web.optimization和microsoft.aspnet等.
我有一个非常艰难的时间,如果有人有一个建议,它的工作,我会很高兴!Stack Overflow上有很多关于此的帖子,但这些建议都没有对我有用.
这是我的bundle.config.cs:
using System.Web;
using System.Web.Optimization;
namespace HFHYYC
{
public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.validate*"));
bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
"~/Scripts/modernizr-*"));
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
"~/Scripts/bootstrap.js",
"~/Scripts/respond.js"));
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/site.css"));
}
}
}
Run Code Online (Sandbox Code Playgroud) css asp.net-mvc visual-studio twitter-bootstrap bundling-and-minification