我的网址无法正确解析。 部署时,我的应用名称从网址中省略。 它的假设是: HTTP:////内容/图片/ ECT 但它被渲染为 HTTP:///内容/图片/ ECT 这显然无法解决。 我的URL看起来像这样:
<img src="/Content/images/Misc/Lock.png" />
如果我在url中添加〜(在内容之前),它在部署时会完美地解析,但在我的开发环境中会中断。
这是一个MVC应用程序意味着我还有一些ajax调用操作(控制器/操作/)也无法解决,打破了大部分网站。
我部署在IIS的默认网站下,无法将其移至其他网站。
非常感谢任何建议。
答案 0 :(得分:1)
您是否尝试过使用Url.Content
?
这将是这样的(未经测试的)
<img src="@Url.Content("~/Content/images/Misc/Lock.png")" />
答案 1 :(得分:1)
这与您的主机有关,如果您将此站点作为子站点而不是在其自己的IIS站点下运行,则主机需要〜。通过使用全局javascript变量来保存站点根目录,我已经解决了这个问题。我在主站点布局中填充变量,如下所示:
var gSiteRoot = '@MvcHtmlString.Create(Url.Content("~/"))';
然后,当我需要在js中构建一个url时,我会这样使用它:
var url = gSiteRoot + 'restofurl';