ASP.net MVC中的MembershipProviders是否会影响样式表链接?
时间:2020-03-06 15:04:37 来源:igfitidea点击:
我在ASP.net MVC网站中更改了MembershipProvider,现在登录页面的样式表未正确引用。如果可能的话,下面是我的web.config中的forms标记的副本。它看起来与新项目生成的项目相同,但name和timeout属性除外。
<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" />
解决方案
我本人还没有使用过ASP.NET MVC,但是在为CSS编写href时,我们可以尝试使用ResolveClientUrl:
<link href="<%= ResolveClientUrl("../../content/Site.css") %> rel="stylesheet" type="text/css" />
谢谢伊恩·奥克斯利(Ian Oxley)。不过,ResolveClientUrl并没有解决问题。
它必须处理web.config文件。我有看起来像这样的代码:
<authorization> <deny users="?" /> <allow users="*" /> </authorization>
我在主要元素下面添加了一个location元素,并说任何人都可以查看该内容,并且现在可以使用。事实证明,只有在获得授权之前,才能查看CSS文件之类的文件。现在是固定的。
这是我添加的内容:
<location path="Content"> <system.web> <authorization> <allow users="*" /> </authorization> </system.web> </location>