|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Это не считая платных. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 01:24 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Ёлки палки... Не ожидал что будет такая бурная реакция. Тем не менее из сказанного выше я понял следующее: ef под мою задачу не подходит. Код запроса к сожалению не покажу, комп не подключен к инету, а переписывать долго. Приложение кстати на моих любимых формах пробую сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 04:13 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Petro123skyANAпропущено... ну к примеру Persistence Ignorance авторPersistence Ignorance При использовании ORM важно поддерживать хорошую степерь изоляции между доменной логикой и логикой сохранения данных в БД (Persistence Ignorance). вот ты и сам, так же как и я, всё об этом)) Да, при использовании ОРМ важно следовать этому принципу. Но сам-то принцип не про использование ОРМ, а про то, что классы, моделирующие бизнес-домен, не должны зависеть от того как и куда сохраняются. Ферштейн? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 06:55 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
skyANAДа, при использовании ОРМ важно следовать этому принципу. Строго говоря, это не совсем верно. Зависит от выбранной парадигмы разработки и выбранной ORM. Entity Framework изо всех сил старается соблюдать принцип должной изоляции, и поддерживает понятие Сущности из DDD, но далеко на всё. Dapper и другие микро-орм являются не более чем мапперами результата запроса в POCO, и в обратную сторону POCO разбирается на параметры запроса. Т.е. ни о какой изоляции здесь даже в принципе говорить не приходится, а если и требовать, то городить свой слой абстрации и забивать гвозди в крышку :) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 07:50 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
hVostt, POCO (Plain Old CLR Objects) удовлетворяют принципу Persistence Ignorance, так как не обременены наследованием и атрибутами типа data annotations, или BSON, JSON, XML serialization. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 08:24 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Ну и как обычно степень разная в зависимости от задачи. Можно и свой слой абстракций нагородить ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 08:29 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
hVosttPetro123вам спорщикам, в википедию надо. Удачи! https://ru.wikipedia.org/wiki/ADO.NET_Entity_Framework Entity Framework 6 Entity Framework Core Dapper NHibernate ServiceStack.OrmLite Massive LINQ to DB MicroLite ORM PetaPoco NPoco Limebean LLBLGen Insight.Database DbExtensions Все как в java. Первая четверка есть, а остальные можно сказать в белой книге экзотике. Чё мы тут "бузотерили" мне непонятно. Пусть ТС топик закрывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 08:33 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13, LINQ хорош тем, что позволяет в обычных языках программирования мыслить и работать с множествами и данными из памяти в некоторых случаях код проще, понятней и быстрее (хотя тут еще вопрос - насколько это эффективно реализовано в LINQ) LINQ можно использовать для простых запросов select/insert/update/delete или заполнения доменных сущностей из DDD, но там тоже могут быть проблемы, 20 include в EF тормозят просто безбожно где-то на этапе компиляции запроса а вот как только в дело вступают вложенные запросы, постраничная выборка или специализированные функции самой СУБД, например (NO/***)LOCK для MS SQL или встроенные функции работы с иерархиями в Oracle - то туши свет бросай гранату проще и лучше написать руками нативный sql ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 10:45 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
17-7720 include в EF тормозят просто безбожно где-то на этапе компиляции запроса Проекции, маппинг на вьюхи/процедуры. Тогда не торозмит. Вообще INCLUDE зло, отрывать за это надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 11:50 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
17-77а вот как только в дело вступают вложенные запросы, постраничная выборка или специализированные функции самой СУБД, например (NO/***)LOCK для MS SQL или встроенные функции работы с иерархиями в Oracle - то туши свет бросай гранату проще и лучше написать руками нативный sql Маппинг на вьюхи/процедуры. Ничего не бывает бесплатно и запростотак. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2018, 11:51 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Давайте сделаем уточнение: в БД ничего добавлять и изменять нельзя! Поэтому вариант типа создай вьюху отпадает. Чуть выше я практически увидел ответ на мой вопрос. Получается для сложного запроса LINQ бесполезен. Да и синтаксис мне его не нравиться. В книгах я видел только idbcommand для sql-запросов. Больше ничего лучше нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 04:08 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13, критерии оценки у Вас какие? Внутри всегда idbcommand, нет никакой магии ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 04:17 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13Давайте сделаем уточнение: в БД ничего добавлять и изменять нельзя! Поэтому вариант типа создай вьюху отпадает. Чуть выше я практически увидел ответ на мой вопрос. Получается для сложного запроса LINQ бесполезен. Да и синтаксис мне его не нравиться. В книгах я видел только idbcommand для sql-запросов. Больше ничего лучше нет? Еканый бабай. LINQ не является средством для написания SQL-я. Он для того, чтобы делать запросы к объектам. Которые могли бы транслироваться в SQL, но только в том случае, если у вас база данных является хранилищем объектов, т.е. проектировалась таким образом. Если случай тяжёлый, "БД низзя менять", то пишите руками SQL, потом засовывайте результат либо в dynamic, либо пытайтесь в какие-то классы присунуть. Вообще при чём тут тогда EF? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 06:39 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13В книгах я видел только idbcommand для sql-запросов. Больше ничего лучше нет? Пока не ясно от чёго вас лечить, таблеток не дадим ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 06:42 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13Больше ничего лучше нет?вы никогда не освоите шарп даже на джуна с такими целями. Устраивает? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 09:10 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13Получается для сложного запроса LINQ бесполезен.да. Но я не вижу смысла говорить про чистый linq не в составе ОРМ. Это как чистый неразведенный спирт. dartveider13Да и синтаксис мне его не нравитьсясм.выше Вам в дельфи. Там ОРМ просто не нужен. Ну или тут работать как там. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 09:26 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Да согласен, я был неправ обзывая LINQ средством создания запросов. Ну не вкурил сразу что он явялется и средством доступа к разнообразным данным. Да, в чистом виде использовать SQL на клиенте уже не гуд. Как вариант, если менять БД нельзя, то можно создать свою БД с блэкджеком и шлюхами с хранимыми процедурами, вьюхами и т.п., которая может подключаться к другим БД. Во вьюхах делать сложные запросы. А в шарпе уже делать модели из этой БД (EF, LINQ to SQL и тд.). Вот так правильно? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:37 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
А по SQL-запросам вычитал в доках про класс System.Data.Linq, а в нем ExecuteQuery ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:40 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13Да, в чистом виде использовать SQL на клиенте уже не гуднет. Что в java что в шарп можно писать если у вас dataSet. Он на sql работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:51 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13Вот так правильно? Нет. Делают так: - где БЛ? Если в аппСервере и вот такая var User = new контекст.UserТабла User.Имя = контекст.Сохранить(); То берете helloworld EF и не парьте мозги. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:56 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Petro123, мне действительно сложно перейти на принципиально новую парадигму. Там в делфи я привык - кинул коннекшн, датасет, запрос, грид. Все связал - вывел данные. Да, там ничего более не надо. Но я действительно хочу освоить шарп. Сложность еще заключается в том, что у меня нет хорошего исходника - примера для работы с БД. По исходникам как я заметил мне лучше понимается. Там же где в исходниках мне непонятно, там я уже лезу в гугл, доку и прочее. Тут же я пытаюсь освоить Шарп с использованием 2-х книжек - Троелсен и Мак-Дональда. Плюс т е инета нет на рабочей тачке, загрузил вчера в студию локальную документацию. Там я и нашел про ExecuteQuery. Сложность осваивания и в том, что это ооочень большой массив информации с разными технологиями. И мне хочется именно прийти к пониманию того, что я пишу. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:56 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13А по SQL-запросам вычитал в доках про класс System.Data.Linq, а в нем ExecuteQueryесли sql и хранимки то зачем вам linq? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:58 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
Petro123, БД лежит на сервере. Создана была через MS SQL Server Management Studio ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 10:59 |
|
А чем так хорош linq в сравнении с обычным sql
|
|||
---|---|---|---|
#18+
dartveider13хочу освоить шарп. 21344629 и не плакать. Что тут две страницы обсуждать, когда вы уже пример должны делать. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.04.2018, 11:01 |
|
|
start [/forum/topic.php?fid=17&msg=39631377&tid=1349202]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 146ms |
0 / 0 |