2013-03-29 2 views
2

Какова наилучшая практика для создания экземпляров BreezeJS EntityManager для одного приложения страницы с использованием Durandal?Должен ли BreezeJS совместно использовать диспетчер объектов через страницы в приложении с одной страницей, используя Durandal?

Должен ли быть один экземпляр Менеджера сущностей, который является общим для всех страниц, или должен быть один экземпляр для каждой страницы?

Оцениваются любые особенности реализации.

ответ

6

Это зависит от того, чего вы хотите достичь. Если у вас 1 общий доступ к EntityManager (EM), все данные будут совместно использоваться в одном месте. Любые изменения разделяются между представлениями и режимами просмотра. Когда вы нажимаете кнопку «Сохранить», вы сохраняете все экраны. Обычно в этом случае вы хотите не оставлять экран до тех пор, пока пользователь не сохранит или не отменяет.

Если вы хотите иметь возможность открывать разные экраны и сохранять данные независимо друг от друга, вы можете создать несколько EM. Затем вы можете отменить один или сохранить другой, как хотите.

Или у вас может быть EM для областей вашего приложения (возможно, более распространенный). Действительно зависит от того, что вы хотите сделать. Если у вас нет требования хранить отдельные операции, то 1 EM будет достаточным.

+0

Спасибо, Джон! –