我的View的相对URL路径在部署时中断

时间:2014-05-13 15:29:45

标签: javascript .net asp.net-mvc iis

我有一个非常标准的ASP MVC应用程序,我使用一点点javascript来显示部分视图。为了使Javascript工作,我需要硬编码部分路径,这在开发和生产之间是不同的。

主要是,Dev中没有App规范,就像生产中那样。见这里:

生产= var URL = '/WetWashRequest/wetWashRequests/GetDetails?WONumber=' + wo;

Dev = var URL = '/wetWashRequests/GetDetails?WONumber=' + wo;

这意味着当我在本地处理它时,我会删除第一部分,当我想部署时,我必须记住重新添加它。

这看起来如此荒谬,以至于我只能假设自己是无知而做错了......

1 个答案:

答案 0 :(得分:1)

您可以利用UrlHelper获取网址,只要您在视图中执行此操作:

var URL = '@Url.Action("GetDetails")';

显然,将所有JavaScript放在视图中是没有意义的,所以我通常会在我的视图中,在命名空间var中设置这个,然后在我的外部JavaScript中引用它: / p>

查看

<script>
    var MyApplication = MyApplication || {};
    MyApplication.GetDetailsUrl = '@Url.Action("GetDetails")';
</script>

外部JS

$.get(MyApplication.GetDetailsUrl, { WONumber: wo }, function (result) {
    ...
});