(注意:试图寻找类似的问题,但最接近的问题似乎仍然与我的问题不匹配。即MVC - 应用程序根使用 Url.Content/Url.Action 在 url 中出现两次)
我目前有两个 ASP.NET MVC 3 RC 应用程序在一个域下运行,即
mydomain.com/app1
mydomain.com/app2
现在,因为它是一个单独的应用程序,我注册了另一个域名并启用掩码转发到其中一个应用程序(即http://foo.com将加载http://mydomain.com/app1并在浏览器中,它只会显示http://foo.com,而不是http://mydomain.com/app1)
嗯,这就是 MVC 开始抱怨的地方。Url.Content() 和 Html.Action() 都会生成意外的 URL。例如,在 Html.Action() 的情况下,如果我有@Html.ActionLink("About", "Index", "About")
,我期望http://foo.com/about,但最终得到http://foo.com/ app1 /about
因为http://foo.com/app1/about翻译成http://mydomain.com/app1/app1/about,显然链接不起作用。
同样,对于Url.Content,如果我有href="@Url.Content("~/Content/Site.css")"
,浏览器将无法加载样式表,因为它认为该位置位于http://foo.com/app1/Content/Site.css,而不是http://foo .com/Content/Site.css
有没有办法,我可以让 MVC 忘记它的起始目录(即从其生成的 URL中删除“ app1/ ”?)
感谢您的阅读,如果此处需要更多信息,请告诉我。