powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / EF и бизнес-логика
21 сообщений из 21, страница 1 из 1
EF и бизнес-логика
    #37016174
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть база данных (не важно на какой СУБД) и приложение клиент, как лучше всего из Вашего опыта реализовать биснес-логику - на уровне базы данных или уже в приложении с помощью возможностей EF.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016508
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaneKateЕсть база данных (не важно на какой СУБД) и приложение клиент, как лучше всего из Вашего опыта реализовать биснес-логику - на уровне базы данных или уже в приложении с помощью возможностей EF.
Из моего опыта на уровне приложения вообще ничего и никогда не нужно реализовывать. Приложение вообще не нужно программировать. Поэтому, "неважно на какой СУБД" - это заблуждение:)
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016571
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если я правильно понял, то из Вашего опыта программирования на .net с использованием Entity Framework нельзя реализовывать бизнес-логику на уровне клиента? Так?
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016592
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaneKateЕсли я правильно понял, то из Вашего опыта программирования на .net с использованием Entity Framework нельзя реализовывать бизнес-логику на уровне клиента? Так?
Нет не так. Не нужно на уровне клиента реализовывать никакой логики. Где вы увидели "нельзя"?:)
Все entity у вас в БД, какая еще Entity Framework.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016627
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaneKateЕсть база данных (не важно на какой СУБД) и приложение клиент, как лучше всего из Вашего опыта реализовать биснес-логику - на уровне базы данных или уже в приложении с помощью возможностей EF.на уровне СУБД или сервера приложений (для трехзвенок)
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016729
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вся логика должна быть в SQL.
Приложение просто некий вювер в возможностью вноса данных.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016735
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредятинаJaneKateЕсли я правильно понял, то из Вашего опыта программирования на .net с использованием Entity Framework нельзя реализовывать бизнес-логику на уровне клиента? Так?
Нет не так. Не нужно на уровне клиента реализовывать никакой логики. Где вы увидели "нельзя"?:)
Все entity у вас в БД, какая еще Entity Framework.

Так я же спрашивал про ваш опыт в этой системе. Там как раз все и завязано на том, что концептуальная модель (сама объектная суть) базы данных уже В приложении. Я понял Ваш ответ, но имеете ли Вы опыт работы с ЕФ что бы компетентно рекомендовать. Поймите меня правильно, ведь ORM это Вам не это). Спасибо.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016748
Бредятина
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaneKateБредятинапропущено...

Нет не так. Не нужно на уровне клиента реализовывать никакой логики. Где вы увидели "нельзя"?:)
Все entity у вас в БД, какая еще Entity Framework.

Так я же спрашивал про ваш опыт в этой системе. Там как раз все и завязано на том, что концептуальная модель (сама объектная суть) базы данных уже В приложении. Я понял Ваш ответ, но имеете ли Вы опыт работы с ЕФ что бы компетентно рекомендовать. Поймите меня правильно, ведь ORM это Вам не это). Спасибо.
Ну Вы меня окончательно запутали. Да еще объектно-ролевое моделирование (а может даже объктно-реляционный мэппинг).
Я пас:)
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016839
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на уровне базы данных или уже в приложении с помощью возможностей EF?
Это зависит от класса системы.
Если система data-aware(data-ориентированная), то реализуйте на стороне СУБД, но тогда не понятно зачем вам EF... Только лишь в качестве маппера?

Если система оперирует разветвленными бизнес-объектами и бизнес логика сложная, то реализуйте ее на стороне сервера приложения, но в любом случае ссылочная целостность и реализация простых ограничений (constraints), по-хорошему, должны быть также реализованы и на стороне СУБД.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37016993
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман Дынник,

Да это именно то что я хотел узнать, система более user-aware потому конечно связи, ограничения, ключи и все остальное будет реализовываться на уровне СУБД, все остальное (выборка, операции и т.д.) - на клиенте.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37017250
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если с технической точки зрения, то логику надо помещать как можно ближе к данным.
Тогда меньше вероятности что туда кто-нибудь вклинится обойдя проверки или заново реализуя алгоритмы. Плюс можно применять наиболее эффективные методы обработки - оптом, используя все фичи выбранной СУБД.
А вот по деньгам тут все не так однозначно.
Во первых процессор на сервере СУБД совсем не то что процессор на сервере приложений, тут и экономия на лицензиях и нелинейный рост стоимости после определенных значений.
Во вторых разработчиков на Java, .NET и т.п. больше и стоят они дешевле (при одинаковой квалификации) чем специалистов в SQL (TSQL, PL/SQL)
В третьих чем меньше приложение завязано на СУБД тем легче его портировать и шире клиентская база.
В четвертых поддержка изменений только приложения проще чем приложения и базы (причем не в два, а в четыре раза)

Так что где лучше сильно зависит от внешних условий.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37017584
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257,

Приложение представляет собой виртуальную химическую лабораторию с возможностью вести журнал проведенных экспериментов, учет реактивов, сотрудников и т.д., короче, планы наполеоновские. Платформа .NET, технология WPF, СУБД... сначала хотел взять за основу SQL Server 2008 R2, но меня терзают смутные сомнения по опводу ограничения на размер базы - 10 ГБ (просто в базе нужно будет хранить файли результатов анализов - .пдф, .джейпег и т.д., да и вообще, будет не приятно если в какой-то прекрасный момент все остановится из-за такого ограничения, а бюджет мал) и я решил посмотреть в сторону жарптицы. Программирую на C#, по-этому, в свете новых веяний решил использовать ОРМ-систему - EF. Вот только думаю, что реализовывать на сервере, а что на клиенте. Безопасность, например, - на жарптице не поддерживается RLS, нужно будет делать самому, а не проще ли сделать на клиенте? (хотя я был всегда противником реализации безопасности на клиенте), разве что в 3-й версии FB будет возможность работать с ролями и группами.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37018705
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaneKate просто в базе нужно будет хранить файли результатов анализовЗачем в базе
JaneKate все остановится из-за такого ограниченияТогда и деньги найдутся быстро
JaneKate в сторону жарптицыКогда такое пишут монстры типа Dimitry Sibiryakov или kdv это одно. Я верю что они свою СУБД загнут любой буквой зю и выйдут из любого штопора. А вам я посоветую или заключить с ними договор или пойти более натоптанной дорожкой.
JaneKate RLS, нужно будет делать самомуRLS вам не нужно. Вы не совсем понимаете что это такое. Нужна вам скорее всего обычная модель безопастности (пользователи, роли, объекты, разрешения ролям на объекты), но это уже другая тема. (Я не знаю умеет ли FB роли как группы пользователей)
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37019071
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257,

Более натоптаная дорожка - это Вы имеете в виду SQL Server? Конечно, тут я не спорю, просто приложение будет расчитано не на большие лаборатории, а на средние, даже маленькие при ВУЗах и держать там администратора SQL Server'а... Ну, хотя, при желании можно и без него, но все же... (особенно это касается установки MSSQLS). Файлы действительно можно хранить не в базе, но для этого нужны дополнительные работы (в плоть до FTP-сервера).

По поводу RLS, возможно Вы правы, я не доконца понимаю... но для меня это как опредиление возможности реализации безопасности с помощью ролей и/или груп, пользователей (RLS - как-то короче и из статьи на RSDN, по-моему, означает то же).

На счет денег, вряд ли они скоро найдутся в универе, это уж если потом такой проект станет востребованным...

Одним словом, блажен кто верует. Вам спасибо за предметный комментарий.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37019661
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaneKate это Вы имеете в виду SQL Server?Я имею в виду базу которую вы лучше знаете. То есть программу действий если что либо будет работать не так как ожидалось
У скуля пользовательская база шире, вероятность наткнуться на неизвестный баг меньше. Связываться с FB (при всем моем уважении к разработчикам), особенно если вы ее не знаете, без поддержки - экстрим еще тот.
Но безумству храбрых поем мы песню (с)
JaneKate держать там администратора SQL Server'аА FB типа администратора не требует, устанавливается сам и работает всегда. Пользователи тоже сами заводятся, патчи скрипты тоже сами накладываются, с производительностью проблем никогда не бывает и из бакапа никогда не надо будет восстанавливаться.
JaneKate но для этого нужны дополнительные работы (в плоть до FTP-сервера).Зачем? В простейшем случае расшарьте папку.
JaneKate По поводу RLS, возможно Вы правы, я не доконца понимаю ROW level security - организация доступа на уровне строк - то есть эту строку показываем эту скрываем. Это отличается от АНСИ доступа на уровне столбцов, которые выполняются во время парсинга запроса. Зачем вам такие сложности непонятно.
JaneKate Программирую на C#, по-этому, в свете новых веяний решил использовать ОРМ-систему - EF. Вот только думаю, что реализовывать на сервере, а что на клиенте.Хотите бесплатный совет - реализуйте ВСЕ на сервере - клиент только отображает результат хранимых процедур и перечитывает набор данных (или обновляемую строку)
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37019662
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257,

Блин, ну что за огульные советы - все на сервере
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37019680
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos Блин, ну что за огульные советы - все на серверетрехзвенкой ТС не увлекается, я ДБА, коробочных приложений никогда не делал, какой еще совет я могу дать?
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37019682
Фотография StalkerS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вон лучше к Роману Дыннику прислушайтесь - если дата-ориентированная система - то в БД, если накрученная бизнес-логика - то в доменной модели
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37020171
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257А FB типа администратора не требует, устанавливается сам и работает всегда. Пользователи тоже сами заводятся, патчи скрипты тоже сами накладываются, с производительностью проблем никогда не бывает и из бакапа никогда не надо будет восстанавливаться.

Ну Вы и сравнили! Одна установка SQL Server чего стоит по сравнению с ФБ. К тому же, я хочу что бы программу мою вместе с СУБД мог установить любой более-менее уверенный пользователь ПК, но без всяких знаний о администрации СУБД. Все остальное (создание БД, выполнение скриптов, бэкапы) - все должно лечь на плечи приложения.

Что касается совета "все на сервере", то я с Вами согласен, ибо это более общее решение, но так как БД действительно более расчитана на пользователя (химика, часто не знакомого с аспектами функционирования ПО), к тому же, используется ОРМ-система, то возможно и проще реализовать разумную часть бизнесс-логики в приложении.

Почему Вы так насторожено относитесь к связке жарптици и EF? Действительно ли там так много проблем?
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37022149
SERG1257
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JaneKate так как БД действительно более расчитана на пользователяА это здесь причем?
JaneKate к тому же, используется ОРМ-система, то возможно и проще реализовать разумную часть бизнесс-логики в приложении.Реализовывайте где хотите, слабые места логики на клиенте озвучены.
JaneKate Почему Вы так насторожено относитесь к связке жарптици и EF? Действительно ли там так много проблем?Я довольно давно работал с FB (версии 1 с копейками) и совсем не работал с EF, про проблемы не слышал, но аргументы вы приводите довольно сомнительные.
...
Рейтинг: 0 / 0
EF и бизнес-логика
    #37022733
JaneKate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SERG1257,

Почему сомнительные?
1. Установка FB, и это всем известно, проходит намного проще чем SQL Server'a, в моем приложении это довольно существенно, так как оно не data-ориентированное, а следственно желательно минимизировать действия по ее администрации.

2. Максимальный размер базы данных в FB значительно превышает оный у SQL Server, что тоже не маловажно...

3. ...это все уже из другой темы.

Нужно найти золотую середину, особенно в данном случае, когда оба звена (БД и ее объектная модель) могут послужить хорошим инструментом реализации бизнес-логики.

С данной темой все предельно понятно. Если никто не против - можно ее закрывать.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / EF и бизнес-логика
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]