Как стать автором
Обновить

Комментарии 17

НЛО прилетело и опубликовало эту надпись здесь
нет :)
Интересно, как так выходит, что люди начинают работать с EF Core так, как Вы описываете в статье в начале?
Ведь это же банальные основы работы с EF Core, и не узнав их, к работе не приступить.
И их узнать нужно через гугл. А автор статьи против гугла, что ли? Не понял этого момента.

В начале, мол, вот никто ничего не знает, и начинается ГУГЛЕЖ (как будто это что-то плохое), потом переход к полезным приемам и бац тут же — идите гуглить.
Да и вообще все, что описано в статье — гуглится. Так почему же это плохо? Или почему я распознал в обращении к гуглу негативную окраску…
Интересно, как так выходит, что люди начинают работать с EF Core так, как Вы описываете в статье в начале?
Ведь это же банальные основы работы с EF Core, и не узнав их, к работе не приступить.

Еще как приступить. Вы приходите на проект молодым разработчиком, про EF только слышали, вам дают задачу и вы ее выполняете. Где-то спрашиваете, где-то смотрите аналоги. Ну и так как с LINQ вы уже знакомы, а большинство запросов все таки простые, у вас все получается и вы думаете, что освоили EF. Но как только надо поднять все с нуля или выполнить сложный запрос, начинаются проблемы.

И их узнать нужно через гугл. А автор статьи против гугла, что ли? Не понял этого момента.
Не против. Просто гуглить можно до опупения, если не знать что искать. Поэтому я подсказываю, как и что нагуглить.

Статья по факту из двух отдельных состоит: собственно полезные настройки EF (ну — те, которые автор посчитал таковыми) и как переписывать sql в linq.


В первой части стиль конечно просто полный улёт. С одной стороны это стиль такого прожженого профи, который свысока объясняет как правильно, с другой стороны если это был сборник советов, как правильно для тех, кто ещё в маленьких штанишках бегает — то рассказано настолько кратко, что они ничего не поймут. Просто обозначили, что есть IEntityTypeConfiguration — но остальное новичку всё равно придётся догугливать.

Вторая часть была интересна, но опять же написана не для новичков. Мало примеров! Всё как-то абстрактно написано, а можно было бы сделать более наглядно.
Статья не для новичков однозначно, хотя так и позиционируется.


Воздержался от минусов, тут уже вон два вижу, но однозначно планировал влепить.

Поработав с молодыми разработчиками, которые только пробуют на вкус EF, я выделил ряд проблем, с которыми они сталкиваются. Встретившись с ним в бою, они получают много разрозненной информации и я попытался точечно заткнуть дыры, чтобы сформировать в их головах полноценный граф зависимостей и параллельно перевернуть взгляд на построение запросов.
Эта статья не нацелена на старт с нуля, для этого есть метанит и профессор веб.
Эта статья не нацелена на профессионалов. Для этого будут следующие статьи. Хотя, наверное не будут. Уже камнями закидали :)
Эта статья нацелена на тех, кто столкнулся с EF на уже действующем проекте.

То есть было бы интересно получить фидбек именно от этих людей. Вместо этого я нахватал минусов от гуру, которые должны были покинуть статью сразу после
Пришел человек на проект, впервые увидел там EF, подивился такому чуду, научился пользоваться, решил использовать в личных целях. Создал новый проект,… А дальше что делать?


Ну или дочитать, но при этом четко понять, для кого это написано. А то получается минусов накидали, а цель не поняли :)

Но это, конечно, моя вина. Я забыл, что технари прямолинейны как прямая линия и писать между строк не стоит.
На самом деле статья не так бесполезна, как пишут выше и я могу сказать спасибо за неё. В сети информации огромное количество и если статья, которая направит моё гугление в нужно русло, то это стоящая статья. Следующую я бы тоже прочитал, но если будет много минусов, то да возможно не стоит.
По факту интерес был какие объекты должны создаваться как синглтон и т.д.
Вы и начали об этом писать когда для АСП.НЕТ на каждый запрос получается создается новый потом и все объекты EF, и на этом закончили. Не описали как правильно написать или обертку или как правилньо использовать все эти объекты в DI
Очень запутанный текст, я не понял что вы хотели донести.
Перевожу.
Вопрос для asp net. Когда приходит web-запрос, создаётся контроллер. К нему подтягиваются связи через depedency injection. Одной из которых будет репозиторий БД. Как это написать? Создавать ли singleton объект репозитория БД? И вот это вот всё.

Имхо, когда читал статью, думал какой-то очередной студент получил инвайт. Получив первый работающий проект, пошёл учить школьников.
Спасибо за разъяснение. Контекст базы не надо регистрировать как синглтон. По умолчанию он регистрируется как скопд. И это оптимально. В редких случаях можно как трансиент.
Это кратко, без обоснования.

Имхо, когда читал статью, думал какой-то очередной студент получил инвайт. Получив первый работающий проект, пошёл учить школьников.
Все почти так и было xD
может есть прошаренные, на текущий момент есть какой-то визуальный инструмент для работы с EF core, а то каждый раз когда таблица обновляется необходимо писать в командную строку VS «Scaffold-DbContext bla bla lba» для обновления модели, которая к тому же не сохраняется (команда в консоли)после закрытия проекта
так нужен визуальный инструмент для контроля модели или для слежения за актуальностью миграций?
для контроля модели
EF прекрасно работает из коробки, и даже бредовые запросы пробует както оптимизировать. Но это также расслабляет тех кто садиться с ним работать. Люди не изучают АПИ и фреймворк, а добывают знания через интелисенс и просмотр доступных методов, абсолютно не разбираясь как они работают. В статье также было бы хорошо упомянуть тот же Апдейт/Делит данных без предварительного доставания из базы (Detached entities). Так как это ошибка которую допускают 4/5 инженеров
Ну данная статья не про прекрасное. Инженеры допускают те или иные ошибки постоянно. Но если код хоть как то работает и не крашится в позитивных кейсах, то пусть пока будет так, со временем появится понимание внутреннего устройства и это пройдет. Старый код постепенно будет улучшаться, а новый будет писаться изначально лучше. Только вот прежде чем код будет хоть как то работать, надо его хоть как то написать. Для этого и нужна была статья. Просто помочь подключить, настроить, завести.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации