2016-01-23 114 views
1

我想要添加一個CSS文件到我的佈局文件,這是在共享文件夾中。當我運行Web應用程序時,我的CSS沒有呈現(不在解決方案中的CSS(即:Bootstrap CDN)呈現。)ASP.NET MVC 6不呈現CSS樣式表

我嘗試使用這些方法鏈接CSS,但它們不起作用:

<link rel="stylesheet" href="@Url.Content("~/Assets/Scripts/StyleSheet.css")" type="text/css"/> 

<link rel="stylesheet" href="~/Assets/Scripts/StyleSheet.css" type="text/css"/> 

文件結構,我的應用程序是:

enter image description here

有什麼我應該加入到Startup.cs文件,以便它可以讀取CSS文件

謝謝。

編輯:ERROR 404樣式表

我跑Mozilla Firefox瀏覽器的應用程序,並且使用內置的開發者控制檯中看到發生了什麼。觀察網絡選項卡後,它會告訴我在嘗試檢索樣式表時發生了錯誤404。這真的很奇怪。

enter image description here

+0

我在Mozilla Firefox上檢查了開發者控制檯,並且在嘗試檢索樣式表時發現Errror 404(請參閱上圖)。 – koeks525

回答

0

參考貼在StackOverflow的一個類似的問題:ASP.NET 5 MVC6 Custom CSS & Javascript placing convention

我把CSS文件的wwwroot目錄,在css文件夾中。

enter image description here

然後,在我的佈局文件,我改變了href屬性:

<link rel="stylesheet" href="@Url.Content("../css/style.css")"/> 

最後,我確信我有app.UseStaticFiles()在我的配置方法:

public void Configure(IApplicationBuilder app) 
    { 
     app.UseStaticFiles(); 

     app.UseMvc(config => config.MapRoute(
      name: "Default", 
      template: "{Controller}/{action}/{id?}", 
      defaults: new {controller = "Home", action = "Index"}    
      )); 
    } 
1

不要在你的佈局其他更改正確顯示?例如,如果你添加一個隨機文本字符串,是否顯示?至於startup.cs,你應該在配置部分有app.UseStaticFiles();

再次注意到,我在_layout CSS是這樣的:

<environment names="Development"> 
    <link rel="stylesheet" href="~/css/site.css" /> 
</environment> 
<environment names="Staging,Production"> 
    <link rel="stylesheet" href="~/css/site.min.css" asp-append-version="true" /> 
</environment> 

我不認爲這是需要被打破了,但我還沒有嘗試過沒有爆發...

+0

嗨。我的佈局頁面上的文本確實出現在我的其他頁面上。我從引導CSS使用的類(這些文件託管在MaxCDN上)。我檢查了我的Startup.cs文件,並在Configure方法中,我確實有app.UseStaticFiles()。 – koeks525

+0

首先,檢查生成的html,看看它顯示的CSS網址 - 它不應該包含「〜」。從頁面中獲取url並嘗試使用css url中指定的相對路徑在瀏覽器中轉到該頁面。如果所有這些看起來不錯,請使用瀏覽器工具(如firebug或chrome開發人員工具)來確定正在請求什麼以及服務器如何響應。 –

+0

我已經使用瀏覽器進行了檢查 - 它表示無法找到樣式表。這很奇怪,因爲我確定樣式表位於正確的位置。 – koeks525