0

我正在尝试使用 angularJS 使此地图路由适用于我的 .net 客户端-服务器应用程序。

这是我第一次做地图路由和 angularJS,所以我很难理解它是如何工作的。

基本上,我有一个带有客户端和服务器的网站。

解决方案

在这个网站中,我正在尝试为我的客户端使用地图路由从我的服务器获取数据,该服务器从 SQL 数据库获取数据。

问题是,我似乎无法使这个地图路由工作,它似乎完全忽略了我的地图路由,而是尝试获取一个 URL。

地图路由不起作用

我的问题是:为什么它不起作用?

你可以在这里看到我的代码

感谢您提供的任何帮助,如果我显示的内容中缺少代码,我可以进行编辑

编辑:有关信息,这不是 MVC4 项目,而是 MVC2 或 MVC3。我不确定,因为我不是这个项目的发起人。

4

2 回答 2

1

URL 不应以 GetManual 结尾。Web API 控制器将使用 HTTP 方法来确定要调用的操作。所以在你的$http电话中,替换这个:

'../api/Manuals/GetManual'

'../api/Manuals'

你可能必须更换这个

public JsonResult GetManual(int id)
{
    var obj = this.db.GetManual(id);
    return this.JsonHelper(obj);
}

public Manual Get(int id)
{
    var obj = this.db.GetManual(id);
    return obj;
}

你的路由配置应该是这样的:

        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
于 2014-01-16T16:55:29.633 回答
0

我发现了它为什么不起作用的原因。我的地图路线实际上很好。问题来自使用 Visual Studio Express。

在 VS 的 Express 版本上,客户端和服务器项目没有建立在相同的 IP 上。因此,当我尝试使用我的地图路由时,客户端无法在服务器上获取某些内容,因为服务器使用的是不同的 IP。

为了解决这个问题,我将使用 MSBuild

于 2014-01-17T17:14:06.807 回答