2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу 1, 2  След.
 
 Инструменты для работы с СУБД в C#
Сообщение12.02.2017, 00:57 
В хороших книжках часто про это пишут, но читают обычно справочники и ищут там ответы и
решения.

Подсажите, кроме ADO.NET на чем можно в C# с базой работать?(брать толко, что есть в Microsoft .NET Framework)

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 09:33 
neg_lib в сообщении #1191899 писал(а):
брать толко, что есть в Microsoft .NET Framework
Что за странное требование? Вас в NuGet забанили? В оновном все работают с Entity Framework, это по сути стандарт, несмотря на то, что он не является частью .NET Framework. Entity Framework умеет работать со всеми основными SQL-базами (MS, My, Oracle, SQLite).

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 15:18 
warlock66613 в сообщении #1191942 писал(а):
В оновном все работают с Entity Framework, это по сути стандарт, несмотря на то, что он не является частью .NET Framework. Entity Framework умеет работать со всеми основными SQL-базами (MS, My, Oracle, SQLite).


А, как реализуется логика проекта?
Можно ли курсор хранить на сервере?
Раз создается объектная модель базы на клиетне, то весь PL-SQL не пользуем?
Расскажите в чем сила и почему Entity Framework нужно доставлять - он сырой, неудобный(примеры)

Я видел вакансию, где написали - если сделаете без LINQ будет плюсом на PL-SQL

Просветите, куда все движется))) Чтобы не потратить на ерунду время.

ИЛИ ТУТ ОТ ВКУСА ЗАВИСТ?

Если следовать логике, то данные должны лежать и обрабатываться на сервере.

Остальное - тонкие клиенты.

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 15:51 
neg_lib в сообщении #1191984 писал(а):
А, как реализуется логика проекта?
Миллионом разных способов в зависимости от проекта, причём наилучшего способа никто не знает. И я не совсем понял, что вы имеете в виду.
neg_lib в сообщении #1191984 писал(а):
Можно ли курсор хранить на сервере?
Что ещё за "курсор"?
neg_lib в сообщении #1191984 писал(а):
Раз создается объектная модель базы на клиетне, то весь PL-SQL не пользуем?
Вы вообще не используете SQL по сути, Entity Framework его от вас скрывает. В этом в общем-то смысл любой ORM.
neg_lib в сообщении #1191984 писал(а):
Я видел вакансию, где написали - если сделаете без LINQ будет плюсом на PL-SQL
Я на одной конференции слушал доклад от, что называется, "суровых энтерпрайзчиков". Так вот у них вся бизнес-логика была в виде хранимых процедур. А чтобы не сойти с ума они придумали эти процедуры генерить T4-шаблонами (о чём они, собственно, и докладывали). Другие использовали EF, а потом столкнулись с проблемами и написали свою собственную ORM (но я так и не понял из доклада, благодаря чему они смогли достичь увеличения производительности по сравнению с EF). Так что да, "от вкуса", а точнее от конкретных требований.
neg_lib в сообщении #1191984 писал(а):
Расскажите в чем сила
По сравнению с другими ORM: EF бесплатный, с открытым кодом, от Microsoft и простой как доска.
neg_lib в сообщении #1191984 писал(а):
почему Entity Framework нужно доставлять
Потому что он не является частью .NET Framework.
neg_lib в сообщении #1191984 писал(а):
он сырой
EF4 был сырой, а уже пятый - нормально, шестой тем более. Только не перепутайте с Entity Framework Core. Последний не сырой, он просто неработоспособен.
neg_lib в сообщении #1191984 писал(а):
неудобный
По сравнению с чем неудобный? По сравнению с другими ORM? По сравнению с написанием SQL запросов руками?

-- 12.02.2017, 16:52 --

mustitz в сообщении #1191988 писал(а):
Всё равно выглядит так, что ошибку внутри шаблона можно выловить только при инстанцировании.
Да, конечно. Поэтому и хорошо, что дженерики — это не темплейты.

-- 12.02.2017, 16:55 --

mustitz в сообщении #1191988 писал(а):
Модульные типы
Ну да, в С++ по этой терминологии беззнаковые есть только модульные типы, а знаковые вообще и не модульные и не целые :-)

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 16:41 
warlock66613 в сообщении #1191990 писал(а):
neg_lib в сообщении #1191984 писал(а):
Можно ли курсор хранить на сервере?
Что ещё за "курсор"?
Курсором в данном контексте обычно называют результат SQL-запроса. Только я тоже не понял, что значит "можно ли его хранить на сервере". Курсор - это по определению серверная штука и кроме как на сервере его и негде хранить. Обычно в таких случаях имеется в виду, как фреймворк работает с курсорами. Если пользователь открыл веб-страницу, что-то сделал и перешел на следующую, что будет: тот же запрос выполнится опять для следующей страницы или будет использован результат предыдущего?
warlock66613 в сообщении #1191990 писал(а):
Я на одной конференции слушал доклад от, что называется, "суровых энтерпрайзчиков". Так вот у них вся бизнес-логика была в виде хранимых процедур. А чтобы не сойти с ума они придумали эти процедуры генерить T4-шаблонами (о чём они, собственно, и докладывали).
А я видел суровый энтерпрайз, где вся логика в виде хранимых процедур, но никто с ума не сходил. Вообще, это холивароопасная тема, я бы предложил не продолжать.

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 16:48 
http://www.script-coding.com/ADO.html - про нормальные data access object
как управлять в EF CursorType - киньте ссылку

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 16:49 
rockclimber в сообщении #1191998 писал(а):
Обычно в таких случаях имеется в виду, как фреймворк работает с курсорами. Если пользователь открыл веб-страницу, что-то сделал и перешел на следующую, что будет: тот же запрос выполнится опять для следующей страницы или будет использован результат предыдущего?
Никак не работает. Entity Framework живёт на сервере. Клиент с сервером общается или через REST API (чаще) или через WCF Service (реже). А дальше — как напишете серверный код, так и будет. У самого EF никакого внутреннего состояния нет, результат любого запроса — это (отвлекаясь от несущественных деталей) просто коллекция обычных .NET объектов.

-- 12.02.2017, 17:51 --

rockclimber в сообщении #1191998 писал(а):
А я видел суровый энтерпрайз, где вся логика в виде хранимых процедур, но никто с ума не сходил.
Да вроде так все раньше писали, но щас времена уже не те.

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 17:01 
warlock66613 в сообщении #1192002 писал(а):
Да вроде так все раньше писали, но щас времена уже не те.


http://www.oracle.com/technetwork/datab ... 90945.html - это тоже не применяют? В банках и на биржах, например

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 17:07 
neg_lib в сообщении #1192006 писал(а):
это тоже не применяют?
В каком смысле "тоже"? Хранимые процедуры очень даже применяют, я ж с этого и начал. А применяют ли то, на что ссылка, я не имею ни малейшего понятия, но подозреваю, что опять же очень даже применяют.

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 17:17 
warlock66613 в сообщении #1192008 писал(а):
я не имею ни малейшего понятия, но подозреваю, что опять же очень даже применяют.


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

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 17:28 
neg_lib в сообщении #1192010 писал(а):
А, все понял вы WEB разработчик.
Нет, я десктоп-разработчик :-)

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 19:40 
Подскажите, если EF запрос вернул 200000 записей, то они все прокачаются на клиента?
И пользователь будет ждать, когда все завершится.
И как это решается?
Как вы делаете?

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 19:57 
neg_lib в сообщении #1192054 писал(а):
И как это решается?
Лучше всего сделать так, чтобы EF не возвращал столько записей (зачем вам столько записей на клиенте? что вы будете с ними делать?)

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 22:58 
Да, я все пытаюсь плюсы отыскать :D
На нормальных вещах - над этим не надо думать, вернуться первые записи, остальное фечим.

Надо отыскать плюсы, которые продержат технологию лет 5 хотя бы.
VCL 16 лет никто не может свалить :D Опять, кажись на него спрос пошел :D
А COM забыли крепко. И Poket-PC ушло итд.

Называйте, что там удобно и быстро? Буду смотреть.

 
 
 
 Re: Достоинства и недостатки языка C#
Сообщение12.02.2017, 23:07 
neg_lib в сообщении #1192134 писал(а):
VCL 16 лет никто не может свалить
16 лет по меркам энтерпрайза — не так уж и много.

-- 13.02.2017, 00:16 --

neg_lib в сообщении #1192134 писал(а):
Называйте, что там удобно и быстро? Буду смотреть.
Знаете, я не настолько в этом заинтересован.

 
 
 [ Сообщений: 16 ]  На страницу 1, 2  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group