|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Исторически сложилось, что в одной "большой" ИС используем свой набор классов, так сказать DAL, и родной велосипед для работы этих классов с БД. Появилась идея выкинуть велосипед и ездить на порше ))) то есть юзать какой-нить ORM и наслаждаться возможностями LinqToSql. Посмотрел видос http://www.techdays.ru/videos/4401.html дяденька интересно рассказывал, в частности про BLToolKit, попробовал в "небольшом" проекте, оч понравилось. Смотрю вот на "большой проект", и думаю что использовать. BLToolkit или LinqToSql которые делаются в Visual Studio. Используем MS SQL сервер. с одной стороны, порше от Microsoft блестит лучше, мэпинг через пару кликов, WCF служба соответствующая сгенерится, да и будущее BLToolkit сравнительно не совсем внятное, с 4.5 фреймворком пока не дружит. с другой, классы у нас уже определены, и они активно юзаются... а с BLToolkit их достаточно атрибутами дополнить и все, больше контроля над "мелочами", исходники есть, чтоб в случае чего "докопаться" до гипотетической проблемы. Что выбрать? Кто-нибудь может поделиться аргументами за и против!? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 11:52 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Оба варианта тухляк. Entity Framework наше всё. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 11:55 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
МСУ, аргументы в студию плиз. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 12:10 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
КифирчикМСУ, аргументы в студию плиз. L2S сдох и не развивается, BLToolkit убогая сторонняя поделка (уж лучше мощнейший NHibernate) с сомнительным будущим. EF проект от MS, который развивается и является рекомендуемым ORM. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 12:15 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
МСУ, м... если глянуть видео (30 минута), там пример с Entity и показывают что он тянет всю таблицу, в не зависимости от полей которые нужны, это как-то реально не айс, если только за последний год ничего не поменялось. + два сотрудника на предыдущих местах наплевались с мержингом схем в SVN и вообще не хотят визуального дизайнера ))) ну это конечно субъективно ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 12:44 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
КифирчикМСУ, м... если глянуть видео (30 минута), там пример с Entity и показывают что он тянет всю таблицу, в не зависимости от полей которые нужны, это как-то реально не айс, если только за последний год ничего не поменялось. Это просто демонстрация. Сколько данных тянуть с сервера, решает не ORM, а разработчик . ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 12:50 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Видео просто шедеврально, сразу бросается в глаза, что чел даже со студией работать не может. Пол-часа писать Console.WriteLine... Про дефолтный сниппет "cw" я вообще даже молчу. P.S. Автор, хватит смотреть пионерское видео ламов :) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 12:54 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
МСУ, окай кэп ))) исходя из Вашей позиции: Код: plaintext 1. 2.
Ещё есть мнения? кто хочет защитить/поругать этих трех "поделок автопрома"? ))))) самое время выплеснуть все что накопилось ) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:10 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
МСУEF проект от MS, который развивается и является рекомендуемымто, что сегодня рекомендуется майкрософтом, завтра может быть выброшено на свалку истории программизма :) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:16 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
EntityFramework +100 ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:17 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Яростный МечМСУEF проект от MS, который развивается и является рекомендуемымто, что сегодня рекомендуется майкрософтом, завтра может быть выброшено на свалку истории программизма :)Тоже +100 :) Однако работать нужно сегодня, а не завтра. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:18 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Яростный МечМСУEF проект от MS, который развивается и является рекомендуемымто, что сегодня рекомендуется майкрософтом, завтра может быть выброшено на свалку истории программизма :) Редкие ляпы не в счёт :) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:24 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Antonariy, для полноценной работы с БД - NHibernate. Если надо дёрнуть 1-2 хранимки, какой-нибудь одноразовый запросик - то Dapper. BLToolkit и L2S не рекомендую. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:25 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
SolYUtor, ах да! Чуть не забыл. Еще можно посмотреть в сторону MongoDВ или RavenDB, и забыть про ORM как страшный сон. Правда придётся немного поработать над своим отношением к БД, и изучить новые грабли. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:29 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
МСУРедкие ляпы не в счёт :) Загибаем пальцы. Один только Data Access - ADO, OLE DB, ODBC, DAO, RDO, ODS, ADO.NET. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:46 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
SolYUtorЕсли надо дёрнуть 1-2 хранимки, какой-нибудь одноразовый запросик - то Dapper. по мне для одноразового запроса не лень и через SqlCommand его дергнуть )))) SolYUtor... посмотреть в сторону MongoDВ или RavenDB... в контексте моей задачи смена СУБД реально также как и то что кириосити сам оттолкнется от поверхности марса и вернется на землю ))) промежуточный результат... Код: plaintext 1. 2. 3.
я вот обратил внимание, практически все мэпят свои классы в таком виде Код: c# 1. 2. 3. 4. 5. 6. 7.
а где реализация INotifyPorpertyChanged? как это все потом к визуальным контролам биндится? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:47 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
НахлобучМСУРедкие ляпы не в счёт :) Загибаем пальцы. Один только Data Access - ADO, OLE DB, ODBC, DAO, RDO, ODS, ADO.NET. Продолжаем загибать: MS Office, Visual Studio, MS Biztalk Server, SQL Server, Windows, Azure, .NET. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:49 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:52 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Кифирчикя вот обратил внимание, практически все мэпят свои классы в таком виде Код: c# 1. 2. 3. 4. 5. 6. 7.
а где реализация INotifyPorpertyChanged? как это все потом к визуальным контролам биндится?Вроде так: Код: c# 1.
Какую проблему Вы пытаетесь озвучить? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:54 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
МСУПродолжаем загибать: MS Office, Visual Studio, MS Biztalk Server, SQL Server, Windows, Azure, .NET. И какова связь? Я перечислил API и библиотеки доступа к данным (какие вспомнил), в то или иное время декларировавшиеся Microsoft как "передовые" и True Way. Где они сейчас? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 13:58 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Нахлобуч, простите, а Вы что для доступа к данным используете? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:05 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
skyANA...Какую проблему Вы пытаетесь озвучить? если при таком описании свойств, в коде поменять значение, то оно по идее не отобразится в контроле (если не повторить биндинг или не вызвать какой-нить Refresh). чтоб это происходило, поле должно "извещать" что его изменили, и делается это через реализацию интерфейса INotifyPropertyChanged Код: c# 1. 2. 3. 4. 5. 6. 7.
а поле выглядит примерно так Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Или я отстал от жизни? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:06 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
попутно... NHiberanate умеет работать over WCF? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:08 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
SolYUtorAntonariy, для полноценной работы с БД - NHibernate. Если надо дёрнуть 1-2 хранимки, какой-нибудь одноразовый запросик - то Dapper. В баню. У меня не бывает мук выбора инструментов. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:11 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
КифирчикИли я отстал от жизни? Да все правильно, но при чем здесь ORM? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:13 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
skyANAНахлобуч, простите, а Вы что для доступа к данным используете?По ситуации. NHibernate, BLToolkit/LinqToDb ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:20 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
КифирчикskyANA...Какую проблему Вы пытаетесь озвучить? если при таком описании свойств, в коде поменять значение, то оно по идее не отобразится в контроле (если не повторить биндинг или не вызвать какой-нить Refresh). чтоб это происходило, поле должно "извещать" что его изменили, и делается это через реализацию интерфейса INotifyPropertyChanged Код: c# 1. 2. 3. 4. 5. 6. 7.
а поле выглядит примерно так Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Или я отстал от жизни?Нынче модно отделять View Model от Domain Model. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:21 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
НахлобучskyANAНахлобуч, простите, а Вы что для доступа к данным используете?По ситуации. NHibernate, BLToolkit/LinqToDbТак это всё обёртки над ADO.NET. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:23 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
EDUARD SAPOTSKI, при том, что я буду ещё царапать мозг, как некоторые результаты прибиндить к таблицам хотя брешу... BLToolkit мэпит простые поля, но можно допилить руками LinqToSql - аж три события вешает Код: c# 1. 2. 3. 4. 5.
EntityFramework - простые поля Код: c# 1.
также интересная табличка попалась. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:24 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Кифирчика где реализация INotifyPorpertyChanged? INPC руками - это долго и муторно. Автоматика рулит . ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:50 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
AntonariyВ баню. У меня не бывает мук выбора инструментов. Я бы не хвастал такой уверенностью. Умение выбирать подходящий инструмент для решение конкретной задачи всё еще полезно для нашей профессии. No silver bullet. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:52 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
я вообще хочу вынести из БД сложную логику на уровень сервера приложения. и там сравнительно сложный набор действий, у одного заказчика, туповатый сервер, оптимизировали только до 4х сек. Половина действий в ХП, то есть это быстрее чем "Hand coded". Если с EntityFramewok это будет 4*11.... или нет, пусть даже 4*5 = 20 сек. Зачем мне такой ORM? и не нужна мне тут ленивая подгрузка и фоновая синхронизация табличек сущностей ORM. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:56 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
Кифирчиктакже интересная табличка попалась. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
Преобразования из обычного SQL-запроса - редкая для ORM задача. Это именно стихия Dapper и PetaPoco. Не стоит по ней выбирать инструмент, если это не единственная требуемая операция. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:57 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
SolYUtorAntonariyВ баню. У меня не бывает мук выбора инструментов. Я бы не хвастал такой уверенностью. Умение выбирать подходящий инструмент для решение конкретной задачи всё еще полезно для нашей профессии. No silver bullet. отсутствие мук не означает отсутствия выбора ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:58 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
skyANA Выбор ORM-стратегии (.NET) Неплохо написано. Япроцитирую некоторые утверждения. авторORM предназначены решать эту проблему, добавляя слои различных абстракций поверх ADO.NET. Таким образом ORM на самом деле "унутре" использують тот же ADO.NET, только сверху лисапед. Отсюда следствие: ORM - не может быть быстрее ADO.NET, если конечно ORM не использует полностью свои способы работы с базой данных. авторORM предназначены решать эту проблему, добавляя слои различных абстракций поверх ADO.NET. А нужны ли они ваабще ? Чем лучше объект имеющий, к примеру, 5 свойств, от объекта со свойством DataRow в котором эти же 5 свойств-полей ? В комментариях среди всякого был неплохой вопрос: авторПроблема не в изучении SQL и даже не в производительности. Я имею ввиду проблему архитектурного плана. Как максимально закрыть уже написанный код для изменений, иметь возможность добавлять новый функционал и расширять схему данных. Как избежать описания схемы дважды и более раз (в SQL виде и в определении классов) . И при всем этом не потерять в функциональности реляционного подхода. Если тупо втравлять SQL код в код ООП то получится спагетти. А точнее даже говнокод. ORM подход пытается решать эти проблемы. Если тупо использовать типизированные датасеты студии, то там действительно весьма топорно реализовано. Определение типа таблицы запихнуто внутрь датасета, а адаптер к таблице хоть и отдельный, но при необходимости запихнуть одну и ту же таблицу в два различных датасета студия родит два описания одного и того же и создаст два разных адаптера об одном и том же. Но это решаемо. А вот о том, что авторORM подход пытается решать эти проблемы у меня сомнения. ORM их не решает, а просто прячет подальше под своим слоем, играя роль "интерпретатора" к слою данных и логике запросов там, где в ADO.NET был "компилятор". ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 14:58 |
|
Linq2SQL (by Microsoft) vs BLToolkit
|
|||
---|---|---|---|
#18+
ИзопропилSolYUtorпропущено... Я бы не хвастал такой уверенностью. Умение выбирать подходящий инструмент для решение конкретной задачи всё еще полезно для нашей профессии. No silver bullet. отсутствие мук не означает отсутствия выбора+1 have silver ammunition belt ... |
|||
:
Нравится:
Не нравится:
|
|||
17.06.2013, 15:24 |
|
|
start [/forum/topic.php?all=1&fid=20&tid=1404488]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
90ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 327ms |
total: | 520ms |
0 / 0 |