Breeze не расширяет более одного пути к свойству навигации?

если я запускаю следующий запрос, используя NorthindModel, NorthwindDataContext из образцов бриза, расширяется только первое свойство навигации. Все остальные возвращающие значения null:

    var query = EntityQuery.from("OrderDetails")
        .where("OrderID", "==", 11069)
        .expand("Order.Customer", "Order.Employee");
    manager.executeQuery(query).then(querySucceeded).fail(queryFailed);

    function querySucceeded(data){
         var customer = data.results[0].Order().Customer();
         var employee = data.results[0].Order().Employee(); // returns null!!!!!
    }

Если я изменю порядок в расширенном списке параметров, тогда для клиента будет установлено значение null:

    var query = EntityQuery.from("OrderDetails")
        .where("OrderID", "==", 11069)
        .expand("Order.Employee", "Order.Customer");
    manager.executeQuery(query).then(querySucceeded).fail(queryFailed);

    function querySucceeded(data){
         var customer = data.results[0].Order().Customer(); // returns null!!!!!
         var employee = data.results[0].Order().Employee();         }

В чем проблема?


person AndyK    schedule 09.01.2013    source источник


Ответы (1)


Метод «расширить» принимает один аргумент, который является либо массивом, либо строкой с разделителями-запятыми. Вы привели два аргумента. Вместо этого попробуйте следующее.

var query = EntityQuery.from("OrderDetails") .where("OrderID", "==", 11069) .expand(["Order.Customer", "Order.Employee"]);< /эм>

Обратите внимание [].

person Jay Traband    schedule 09.01.2013
comment
Хорошо, документы на breeze.js кажутся беспорядочными... это заняло у меня несколько часов. breezejs.com/documentation/navigation-properties - person AndyK; 10.01.2013
comment
Документы API иногда лучше искать: breezejs.com /sites/all/apidocs/классы/ - person Jay Traband; 10.01.2013
comment
Я обновил комментарий к expand в breezejs.com/documentation/navigation-properties в надежде что следующий человек не борется, как вы. Можем ли мы сделать что-то еще, чтобы сделать это более понятным? Спасибо за ответ. - person Ward; 10.01.2013