13

Мы пытаемся разработать SPA, используя аналогичные методы и технологии, такие как курсы Pluralsight Джона Папы (например, веб-API, нокаут, jquery и т. Д.). Однако, как компания, мы решили не использовать Entity Framework. Мы хотим написать наш серверный слой (ы) данных, используя стандартный ADO.NET.Использование Breeze.js без рамки Entity Framework

Теперь мы пытаемся интегрировать Бриз в наше решение. Однако, хотя веб-сайт Breeze говорит, что они не привязаны к Microsoft, похоже, что если вы не используете EF, вы будете долгое и болезненное путешествие с Бриз.

Мы попытались оценить пример NoDB Breeze, но эта вещь очень сложная и трудно понятная (а также выяснить, как ее реализовать в стандартной многоуровневой арке на стороне сервера - все, кажется, тесно связано и просто помещается в папку «Модели» проекта MVC/Web API).

Итак, мой вопрос (ы):

- Бриз неправильного выбора для библиотеки данных на стороне клиента, если вы не используете EF?

- Если Breeze можно легко сделать, чтобы не использовать EF и использовать только прямой ADO.NET на стороне сервера, есть ли лучший пример или документация, показывающая, как это сделать?

- Учитывая, что наша реализация SPA очень похожа на ароматическую арку John Papa с дюрандалом, нокаутом, веб-интерфейсом и т. Д., За исключением (опять же), что мы не используем EF, лучший выбор для нас, чем Breeze?

- И тогда есть SignalR ... Мы планируем внедрить SignalR позже, делает Бриз даже работать с SignalR?

Спасибо!

ответ

7

Есть много более конкретных примеров на SO.com, но я хочу обратиться несколько ваших ключевых вопросов -

Мы попытались оценить пример NoDB Breeze, но это вещь очень запутанным и трудно понять (а также выяснить, как реализовать его в стандартной многоуровневой арке на стороне сервера - все кажется тесно связанным и просто помещается в папку моделей проекта MVC/Web API) ,

В зависимости от того, какой тип базы данных вы используете, доступно несколько других образцов, а также инструкции по использованию StackOverflow и Breeze. Я мог бы перечислить их здесь, но если бы вы добавили, какую базу данных вы собираетесь использовать, может быть немного легче обеспечить лучший ответ.

Неправильный выбор для библиотеки данных на стороне клиента, если вы не используете EF?

Breeze - отличный выбор, вне зависимости от того, какой тип задней части вы используете. В зависимости от того, какие другие технологии вы используете, действительно существуют различные уровни сложности, но, как только вы получите от вас зависание, вы оглядитесь назад и посмеетесь над тем, насколько это проще, чем вручную создать свою собственную библиотеку данных.Вот удивительный пример бесплатной информации, которая доступна для вас через понимание, как использовать различные технологии - Why are my Breeze.js entities not creating ko.observables?

Если Breeze легко может быть сделано, чтобы не использовать EF и используя только прямые ADO.NET на на стороне сервера, есть ли лучший пример или документация , показывающая, как это сделать?

Я бы просмотрел некоторые другие доступные образцы, в зависимости от того, какие технологии вы пытаетесь использовать. Вот несколько примеров, которые не используют EF -

ZZA - http://www.breezejs.com/samples/zza

  • Угловое, MongoDb, Node

Edmunds - http://www.breezejs.com/samples/edmunds

  • Угловая без базы на всех , только расход API

Много времени вы обнаружите, что вам нужно всего лишь использовать toType в своих запросах для создания сущностей из вашего запроса. Иногда вам нужно больше углубляться, но опять же это зависит от технологий.

Учитывая, что наша реализация SPA близко напоминает SPA арки Джона папину с Дюрандал, нокаутом, Web API и т.д., за исключением (опять же), мы не с помощью EF, есть лучший выбор для нас, чем Breeze ?

Есть другие библиотеки на стороне клиента, JayData, вероятно, самый популярный. Вам, вероятно, нужно объединить свою команду и принять решение о том, какие технологии имеют больше смысла для вас использовать, принимая во внимание множество разных факторов, не зависящих от наших мыслей о StackOverflow.

А тут SignalR ... Мы планируем реализацию SignalR позже, делает Breeze даже работать с SignalR?

Обновлено с предложением Уорда - SignalR и Breeze бы, чтобы служить различным целям вашего приложения. Я думаю, было бы разумно увидеть, будет ли ваше приложение работать с SignalR больше, чем будет ли Бриз из-за их различных проблем.

+0

Хороший ответ, PW Kad! Что касается SignalR, это может быть не «или/или». Мне нравится SignalR для уведомления и Breeze для получения, управления и сохранения данных. Они работают вместе, каждый из которых обращается к отдельной проблеме. Раскрытие информации: «Мне нравится Бриз» отчасти потому, что я соавтор :) – Ward

+0

Благодарим вас за подробный ответ (ы), PW Kad. Я ценю это. Я видел пример Эдмунда, но я даже не смотрел на Angular, поэтому я не хотел, чтобы это мешало понять, как использовать Breeze с Durandal, Knockout и Web API. Но, вероятно, я посмотрю на это позже. Пока я решил поставить Бриз на задний план. У меня есть прототип проекта, который нужно сделать менее чем за месяц (и я потратил буквально 4 дня, пытаясь выяснить Бриз и все еще не мог заставить его работать). Мне придется пересмотреть его позже. Еще раз спасибо. – lmttag

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