[英]ResolveUrl inserts extra quote
我正在编写我的第一个 MVC2 应用程序。 我的母版页运行良好,当我在本地运行它时,它的功能完全符合我的要求。
我的问题是我将它部署在具有一大堆应用程序的服务器上。 ResolveUrl 似乎行为不端。 我得到了正确的路径,但无论出于何种原因,某些东西正在插入额外的引号,或者删除我拥有的引号。
这是我的<link>
:
<link href='<%= ResolveUrl("~/Content/Site.css") %>' rel="stylesheet" type="text/css"/>
结果是什么(客户端,在 ASP.NET 完成之后):
<link href=/vcdemo/PhotoManager/Content/Site.css" rel="stylesheet" type="text/css" />
显然这不是我想要的。 当我更正 Firebug 中的引号时,该站点会正确显示。
有任何想法吗?
您应该使用Url.Content
助手:
<link href="<%= Url.Content("~/Content/Site.css") %>" rel="stylesheet" type="text/css"/>
此外,您似乎正在使用 WebForms 视图引擎,请确保您已删除可能存在于<head>
标记上的所有runat="server"
属性。
ResolveUrl
和runat="server"
是遗留的东西,不应在 ASP.NET MVC 应用程序中使用。
既然你说这是 MVC,你应该尝试使用助手
<link href="<%= Url.Content("~/Content/Site.css") %>" rel="stylesheet" type="text/css"/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.