0

我在我的 ASP.net MVC 网站中更改了 MembershipProvider,现在登录页面的样式表没有被正确引用。如果这可能是原因,下面是我的 web.config 中表单标签的副本。除了名称和超时属性之外,它看起来与新项目生成的相同。

<authentication mode="Forms">
      <forms loginUrl="~/Account/Login" name=".ADAuthCookie" timeout="10" />
</authentication>

当我现在访问该页面时,CSS 的链接标记如下所示:

<link href="../Content/Site.css" rel="stylesheet" type="text/css" />

什么时候应该是这样的:

<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
4

2 回答 2

1

我自己还没有使用过 ASP.NET MVC,但是你可以在写出 CSS 的 href 时尝试使用ResolveClientUrl :

<link href="<%= ResolveClientUrl("../../content/Site.css") %> rel="stylesheet" type="text/css" />
于 2008-10-03T14:53:37.447 回答
0

谢谢伊恩·奥克斯利。不过,ResolveClientUrl 并没有解决这个问题。

它必须处理 web.config 文件。我的代码如下所示:

<authorization>
  <deny users="?" />
  <allow users="*" />
</authorization>

我在主要元素下方添加了一个位置元素,并说任何人都可以查看该内容,并且现在可以使用。事实证明,像 CSS 文件这样的文件在获得授权之前是无法查看的。现在已经解决了。

这是我添加的:

<location path="Content">
   <system.web>
      <authorization>
         <allow users="*" />
      </authorization>
   </system.web>
</location>
于 2008-10-07T18:08:28.003 回答