2011-04-26 57 views
0

我試圖讓動態CSS導入:MVC 3逃逸非轉義的@

@foreach (string cssUrl in Model.Css) 
{ 
    @@import url(@Url.Content(cssUrl)); 
} 

然而,這並不工作,@import被轉義,但@url ......不應該!現在怎麼辦?

回答

3

你可以將純文本的<text>標籤:

@foreach (string cssUrl in Model.Css) 
{ 
    <text>@@import url(</text> @Url.Content(cssUrl)<text>);</text> 
} 

,這可能工作,以及(雖然沒有嘗試過):

@foreach (string cssUrl in Model.Css) 
{ 
    @@import url(@:@Url.Content(cssUrl)); 
} 

請注意,<text></text>標記將不會被rende紅。這裏有一個Razor Syntax Quick Reference by Phil Haack

+0

謝謝!我試過這個:@ String.Format(「@ import url()」,等等... – YesMan85 2011-04-26 19:51:24

0

你爲什麼不只是呈現鏈接標籤爲每個URL是這樣的:

@foreach (string url in Model.Css) 
{ 
    <link rel="Stylesheet" type="text/css" href="@Url.Content(url)" /> 
}