动态加载css文件?代码里面

时间:2011-01-26 02:57:26

标签: asp.net asp.net-mvc-2

我的<head>

中有以下代码
<% if(Context.User.IsInRole("Reseller")) {%>
<link href="<%: themelocation %>" rel="stylesheet" type="text/css" />
<%} else {%>
<link href="<%= Url.Content("~/Content/custom-theme/jquery-ui-1.8.5.custom.css") %>" rel="stylesheet" type="text/css" />
<%} %>

问题在于主题定位,它在这段代码之上声明 - 就像这样:

<%
    var reseller = new Reseller();
    var storeSettings = new StoreSettings();
    var themelocation = "";
    if (Context.User.Identity.IsAuthenticated)
    {
        var resellerRepository = new ResellerRepository();
        reseller = resellerRepository.GetResellerByUsername(Context.User.Identity.Name);

        var storeSettingsRepository = new StoreSettingsRepository();
        storeSettings = storeSettingsRepository.GetStoreSettings((int) reseller.StoreSettingsID);

        themelocation = storeSettings.Theme.StylesheetLocation;
    }
%> 

设置断点显示主题位置包含我需要的字符串,但是当页面运行时 - 它会生成400 - 错误请求错误,并且firebug中的网络选项卡显示它正在查找:

http://localhost:50982/%3C%:%20themelocation%20%%3E

我在哪里错了?为什么它使用变量名,而不是它包含的内容?

我正在使用ASP.NET MVC2,所有这些代码都位于我的母版页上。

1 个答案:

答案 0 :(得分:0)

我做了Artem K.建议并从中删除了runat ='server'并正确执行了代码。