Breeze, необходимые действия и SaveChanges?

Я бегло взглянул на пакет Breeze... и он кажется очень многообещающим... но я не понимаю... какие действия необходимы для правильной работы breezejs-framework (клиентского)?.. Поскольку в примере есть два действия, которые я не уверен в том, что они делают.. или они каким-то образом настраивают клиентскую структуру..

Это два действия: Метаданные и Сохранить изменения... Я понимаю, что они делают... но, как я уже упоминал... прежде всего... нужны ли они для работы Breeze-clientside-framework?.. Могу ли я изменить имя например, SaveChanges? и 2: ndly.. Как работает SaveChanges?.. Это просто "выборка" любого объекта/сущности, которую вы ему бросаете.. и затем предварительная проверка по моделям серверных сущностей, и если есть какое-либо совпадение, то он сохраняет данные?.. он также выполняет обновление и/или создание сущностей?..

Заранее спасибо!


person Inx    schedule 15.03.2013    source источник


Ответы (1)


Breeze использует действие Metadata на стороне сервера для возврата метаданных о форме объектов, которыми он будет управлять. Те же самые метаданные также могут быть определены непосредственно на стороне клиента, и Breeze можно указать не пытаться получить метаданные с сервера (см. свойство DataService.hasServerMetadata). По умолчанию, если это не установлено, т. е. если у бриза еще нет метаданных о сервисе, он автоматически попытается получить метаданные с сервера перед своим первым «запросом» к этому сервису. Образец NoDb в breeze zip показывает хороший пример пропуска этого и предоставления метаданных непосредственно в breeze client.

Действие SaveChanges на стороне сервера необходимо только в том случае, если вы хотите сохранить данные от клиента breeze обратно на сервер с помощью вызова «SaveChanges» на стороне клиента. Упомянутый выше образец NoDb также показывает пример этого.

По умолчанию breeze поставляется с реализацией на стороне сервера моделей, поддерживаемых Metadata и SaveChanges for Entity Framework, но вы также можете предоставить свою собственную версию любой из них. Мы также работаем над другими готовыми реализациями для других популярных бэкендов (Raven, Mongo и т. д.).

person Jay Traband    schedule 15.03.2013