2015-02-16 4 views
0

Я пытаюсь создать простое приложение JavaScript с использованием Breeze.js версии 1.5.3. Он должен использовать службу OData v4. Служба создается с помощью ASP.NET WebAPI 2.Breeze.js OData v4 Ошибка

Включены скрипты:

<script src="/js/jquery.min.js"></script> 
<script src="/js/underscore.js"></script> 
<script src="/js/q.js"></script> 
<script src="/js/datajs-1.1.3.js"></script> 
<script src="/js/breeze.debug.js"></script> 

Вот код настройки EntityManager Бриз:

var serverAddress = "http://localhost:6405/odata/"; 
breeze.config.initializeAdapterInstances({ dataService: "webApiOData4" }); 
var manager = new breeze.EntityManager(serverAddress); 

код выдает следующее сообщение об ошибке: Uncaught TypeError: Cannot read property 'oData' of undefined Вот фрагмент от breeze.debug.js, который терпит неудачу (около строки 16591):

webApiOData4Ctor.prototype.initialize = function() { 
    // Aargh... they moved the cheese. 
    var datajs = core.requireLib("datajs", "Needed to support remote OData v4 services"); 
    OData = datajs.V4.oData; // V4 is undefined, so it throws 
    OData.json.jsonHandler.recognizeDates = true; 
}; 

Я искал datajs-1.1.3.js и не нашел символ 'V4'. Более того, авторы этой библиотеки говорят, что она поддерживает только OData v3. Некоторые предлагают использовать odatajs-4.0.0-beta-01.min.js, найденный здесь http://olingo.apache.org/doc/javascript/, но есть явная зависимость от datajs в исходном коде breeze.debug.js. Я попытался включить сценарий odatajs-4.0.0-beta-01.min.js на мою страницу, но это не помогло.

Кто-нибудь знает, как заставить Breeze.js работать с сервисом OData v4?

ответ

1

Breeze еще не работает с OData 4.0 из-за ряда проблем с библиотекой MS OData. Они знают о проблемах и планируют выпуск, который их скоро исправляет ... Мы работаем с ними и будем пытаться освободить нашу поддержку OData 4.0, когда это произойдет. Мы также будем использовать библиотеку 'olingo' datajs для поддержки OData 4.0.

Обратите внимание, что вам не нужны OData для использования бриза (особенно с ASP.NET WebApi2). См.: http://www.getbreezenow.com/documentation/aspnet-web-api. И вы действительно получаете больше возможностей и более высокую производительность, если вы НЕ: см. http://www.getbreezenow.com/documentation/odata-vs-webapi

+1

Какая возможная ETA для выпуска, поддерживающего v4? – mikesigs

+2

Благодарим за информацию! Я полагаю, что вы исправили свою документацию и сообщили пользователям, что Breeze еще не поддерживает OData 4.0. Это поможет им не терять время, пытаясь заставить его работать. –

+0

@jay, У вас есть ETA, когда Breeze будет поддерживать веб-API OData v4, пожалуйста? –

 Смежные вопросы

  • Нет связанных вопросов^_^