【问题标题】:Breeze.js WebApi OData and DurandalBreeze.js WebApi OData 和 Durandal
【发布时间】:2013-02-25 03:36:15
【问题描述】:

我正在尝试使用 Durandal、Breeze 和淘汰赛来实现 WebApi OData。但我总是遇到错误:

无法初始化 OData。需要支持远程 OData 服务

我创建了一个视图模型:

var my = {}; //my namespace
$(function () {
    var serverAddress = "/odata/";
    breeze.config.initializeAdapterInstances({ dataService: "OData" });
    var manager = new breeze.EntityManager(serverAddress);

    my.vm = {
        customers: ko.observableArray([]),
        load: function () {
            var query = breeze.EntityQuery.from("Customers");
            manager.executeQuery(query, function (data) {
                var results = data.results;
                $.each(data.results, function (i, c) {
                    my.vm.customers.push(c);
                });
            });
        }
    }

    my.vm.load();
    ko.applyBindings(my.vm);
});

在 BreezWebApiConfig 中提到:

public static void RegisterBreezePreStart() {
  GlobalConfiguration.Configuration.Routes.MapHttpRoute(
    name: "BreezeApi",
    routeTemplate: "api/{controller}/{action}"
  );
}

并注册了WebApi:

public static void Register(HttpConfiguration config)
{
  config.Routes.MapODataRoute("odata", "odata", GetEdmModel());
  config.Routes.MapHttpRoute(
      name: "DefaultApi",
      routeTemplate: "api/{controller}/{id}",
      defaults: new { id = RouteParameter.Optional }
  );
}

如果有人有这个想法,请给我建议。

【问题讨论】:

    标签: asp.net knockout.js asp.net-web-api breeze durandal


    【解决方案1】:

    我解决了我的问题,我错过了参考:

    datajs-1.1.0.js
    

    Breeze OData 功能依赖于 datajs 库。

    【讨论】:

      猜你喜欢
      • 2016-06-11
      • 2013-04-20
      • 2019-03-24
      • 1970-01-01
      • 2015-11-04
      • 2016-02-10
      • 1970-01-01
      • 1970-01-01
      • 2013-03-11
      相关资源
      最近更新 更多