Всё об Entity Framework Core

แชร์
ฝัง
  • เผยแพร่เมื่อ 2 ก.พ. 2025

ความคิดเห็น • 111

  • @Женькапеченька-с5ш
    @Женькапеченька-с5ш 2 ปีที่แล้ว +34

    18:18 настройка связи Code Convention
    20:30 настройка связи Data Annotation
    25:38 настройка связи Fluent API
    32:34 один ко многим
    49:28 один к одному
    1:02:10 многие ко многим
    1:09:37 заполнение бд
    1:22:00 select ы
    1:23:20 LINQ Method запрос
    1:38:48 LINQ Query Syntax запрос
    1:52:06 миграции
    2:18:10 Database first

    • @ForWorking-zy7wv
      @ForWorking-zy7wv 10 หลายเดือนก่อน

      1:05:20 у меня ошибка необработанное исключение на строке Database.EnsureDeleted();
      System.InvalidOperationException: "Unable to determine the relationship represented by navigation property 'Curse.Users' of type 'ICollection'. Either manually configure the relationship, or ignore this property using the '[NotMapped]' attribute or by using 'EntityTypeBuilder.Ignore' in 'OnModelCreating'."
      Пытаюсь сделать связь многие ко многим как в видео показано, оно не хочет так делать
      Видимо мой Entity не хочет создавать таблицу сам, не знаю

  • @gioeffectpro
    @gioeffectpro 3 ปีที่แล้ว +12

    Ребята, вы лучшие ! Дай бог вам здоровья !

  • @ThePowerWest
    @ThePowerWest 3 ปีที่แล้ว +11

    Благодарю за такое подробное и информативное видео.
    Очень тяжело было для меня понять все это из других источников.
    Спасибо, что разжевали.
    Успехов вам!

  • @Юлия-б8ъ2и
    @Юлия-б8ъ2и ปีที่แล้ว +1

    Огромное спасибо! Всем бы преподам такую подачу материала! Всё супер! На пальцах, настолько просто, что любой поймёт , как использовать и для чего Entity Framework!

  • @johnmorrison4096
    @johnmorrison4096 ปีที่แล้ว +16

    Челы, которым не нравится "ээээ", " аааа" комментатора, либо вы не программисты, либо позеры, идите крч на свой гуманитарий и дальше прячьте свои комплексы по тупоголовости.
    По видосу: Контент такого рода редкий и обычно, платный, поэтому спасибо огромное за туториал, разобрался хоть более менее в EF.

    • @vadimn6393
      @vadimn6393 10 หลายเดือนก่อน +2

      Ну я "не программист" (по вашему определению) с 25-летним опытом (в американских, европейских, даже австралийских it компаниях). Года 2 не работал именно с EF заглянул чтобы быстро обновить знания по некоторым деталям.
      Но прошел мимо. Материала по EF как грязи, бесплатного, в том же ютубе. А слушать эти "аааа", "ээээ", шумное дыхание, слюнявое причмокивание - увольте. Если бы это были девушки, то еще ладно. Но я человек современный и не осуждаю, если все эти физиологические звуки кому-то приятно слушать и от парней (при наличии огромной альтернативы материалов по этой теме).

  • @danerinken9391
    @danerinken9391 2 ปีที่แล้ว +1

    Всё максимально ясно и простым языком преподнесено. Информацию из данного видео довольно легко будет усвоить начинающим разработчикам. Благодарю за урок.

  • @linuxforbeginners5121
    @linuxforbeginners5121 ปีที่แล้ว

    Привет. Зацепило то что ваше видео намного больще по времени чем мы проходили на занятиях. Еще смотрел ваше видео для того чтобы увидеть тему под вашим углом зрения, так как не всегда представление учебной части понятно всем учеикам.

  • @light2night
    @light2night ปีที่แล้ว +1

    Спасибо. Отличный урок, я узнал много полезной информации которая облегчит мою роботу с Entity Framework. Эта штука мне понравилась, хотя по началу кажется довольно непонятной и запутаной

  • @yakoro4ka112
    @yakoro4ka112 ปีที่แล้ว +1

    Ребята, спасибо за труды. Все просто и понятно!

  • @konstantine_2761
    @konstantine_2761 3 ปีที่แล้ว +34

    Хороший тон, рассказывая теорию сразу показывать ее на практике. Однако я, пришедший по названию Вашего видео и уже настроившись смотреть его целиком и полностью, ожидал прям если не все, то многое. Однако не увидел моментов про:
    1. подходы при использовании наследования.
    2. На том же собеседовании легко попросить назвать подходы по загрузке данных - Eager/Explicit/Lazy loading. Да, вы рассказали и показали их на примере. Но ни разу не сказали, что это так называется, чтобы человек не потерялся, услышал сей термин. Плюс здесь тоже есть корреляция с отслеживанием данных, а про это вообще ни слова.
    3. Поскольку звучали объяснения про IQueryable, хоть вскольз можно было кому-то напомнить, а кому-то и узнать про разницу в возвращении коллекции IE & IQ.
    4. Хоть немного на практике рассказать про фильтры уровня модели.
    5. Конечно работа EF Core и SQL запросов, в т.ч. вызов sp. Почему иногда нужно так делать, ну и т.д.
    6. Просто ознакомть с скомпилировнными запросами.
    В то же время я прекрасно понимаю, что даже поверхностно рассказать про моменты, упомянутые выше, займет ещё конкретный кусок времени, однако ваши тайминги и так вышли за 2 часа, поэтому, как я считаю, исходя из вашего названия, можно хоть 7 часов выложить, это будут все равно смотреть те, кому это интересно. Зато в таком ролике будет собрано превалирующее количество материала по данной теме.
    Ну вот это то, что сразу пришло в голову после просмотра всего видео.
    Опять же, вообще спасибо за то, что выложили сей материал, мой комментарий не воспринимайте как критику ни в коем случае, это мое субъективное мнение, спасибо.

    • @PlatinumTechTalks
      @PlatinumTechTalks  3 ปีที่แล้ว +6

      спасибо большое за такой развернутый отзыв! нам это очень важно!

    • @andrexxelles
      @andrexxelles ปีที่แล้ว

      С каких пор критика попадает под вето ?

    • @fivepeopleintheworld
      @fivepeopleintheworld ปีที่แล้ว

      Лучший комментарий, благодарю)

  • @getcureone1461
    @getcureone1461 ปีที่แล้ว

    Огонь для новичков! И для таких как я, кому редко нужно взаимодействовать с EF Core и нужно быстро самую базу вспомнить

  • @larissasavchenko4101
    @larissasavchenko4101 6 หลายเดือนก่อน

    стоящее видео. спасибо автору. успехов ему в преподавательской деятельности.

  • @sergeysaviiskyi7329
    @sergeysaviiskyi7329 ปีที่แล้ว +1

    Отличная лекция с примерами! Спасибо большое!

  • @vitalyshevchenko5030
    @vitalyshevchenko5030 3 ปีที่แล้ว +2

    Спасибо за качественную работу! Тема разобрана великолепно!

  • @avaloniuss
    @avaloniuss 2 ปีที่แล้ว +2

    Спасибо! Очень полезный доклад!

  • @user-nj6ff9ko9u
    @user-nj6ff9ko9u 7 หลายเดือนก่อน +1

    САМОЕ ЛУЧШЕЕ ВИДЕО ПО ТЕМЕ КОТОРОЕ ПОКА ВСТРЕЧАЛ

  • @kl45gp
    @kl45gp 2 ปีที่แล้ว +11

    1:09:25 конец инфы про отношения и подходы. Начало темы запросов.
    1:52:08 миграции

  • @denchikniki2741
    @denchikniki2741 3 ปีที่แล้ว +4

    Спасибо. Отлично преподнесена тема!

  • @petrnaboko8720
    @petrnaboko8720 3 ปีที่แล้ว +1

    Огромное спасибо за труд! Отличный гайд!

  • @LehusWV
    @LehusWV 3 ปีที่แล้ว +12

    На 37-й минуте... Если в классе person сделать 2 свойства public int DepartmentId и public Department Department то в классе Department id не нужно переименовать, оно и так работает. Более того, если в классе person первое свойство назвать не DepartmentId, а OtdelId и второе свойство назвать Otdel при этом типы свойств оставить int и department, то оно тоже это поймет

  • @Дмитрийм-л7ф
    @Дмитрийм-л7ф 3 ปีที่แล้ว +6

    Класс. Спасибо.

  • @madarator1318
    @madarator1318 4 หลายเดือนก่อน

    Спасибо большое Олег

  • @КритерийПарето
    @КритерийПарето 2 ปีที่แล้ว +2

    Наткнулся на Вас, воу, нашел алмаз на дне ютуба

  • @riz2036
    @riz2036 2 ปีที่แล้ว

    Спасибо большое за видео!!
    Очень помогла разобраться с темой!

  • @vladimirl7413
    @vladimirl7413 2 ปีที่แล้ว +1

    Спасибо) Инфа лучше разжевана чем у топовых преподов с pluralsight

  • @alexeymyasnichenko3318
    @alexeymyasnichenko3318 3 ปีที่แล้ว +1

    Большое спасибо за доклад.

  • @EugeneSkakun
    @EugeneSkakun 2 ปีที่แล้ว

    Спасибо . Автору респект и уважуха

  • @СаняСанин-ш6у
    @СаняСанин-ш6у 2 ปีที่แล้ว

    Просто блестяще!! Огромное спасибо!

  • @123qwead7
    @123qwead7 ปีที่แล้ว

    Спасибо за видео. Полезно.

  • @veranavrotskaya5484
    @veranavrotskaya5484 2 ปีที่แล้ว

    Есть в Москве Ленинградский проспект! Я рядом с ним живу ☺️
    Спасибо большое за видео! Супер классное!

  • @antya1126
    @antya1126 8 หลายเดือนก่อน

    Спасибо за труд

  • @primatneuman
    @primatneuman 2 ปีที่แล้ว +1

    огромнейшая благодарность

  • @smrsgv
    @smrsgv 3 ปีที่แล้ว +5

    спасибо

  • @erickmanciny1352
    @erickmanciny1352 ปีที่แล้ว

    Потрясающее видео

  • @Ya_kruutoy
    @Ya_kruutoy ปีที่แล้ว

    Хоршая лекция, тут были рассмотренны многие подходы для работы с EF, для новичков самое то, но для старичков можно было и по глубже рассмотреть.Спасибо!

  • @skypravda
    @skypravda 2 ปีที่แล้ว

    Спасибо, это было эпично.

  • @iraklidavitaia
    @iraklidavitaia 2 ปีที่แล้ว

    Спасибо. Было интересно 🤔

  • @winstochurgle9133
    @winstochurgle9133 3 ปีที่แล้ว +3

    Парни,у кого будут проблемы вроде "No context was found", используйте такие команды:
    EntityFrameworkCore\Add-Migration Name
    EntityFrameworkCore\Update-Database

  • @begemotik88888888
    @begemotik88888888 7 หลายเดือนก่อน

    Добрый день уточнение когда загружается мастер и подчиненная таблицы, например 10 мастер и в каждой детайл 100 то получается что 1000 загружается даже если пейдж инг ?

  • @КритерийПарето
    @КритерийПарето 2 ปีที่แล้ว +1

    Золото на дне ютуба

  • @botcser
    @botcser ปีที่แล้ว

    Красапед!

  • @nkochubashev
    @nkochubashev 2 ปีที่แล้ว

    Спасибо большое за содержательную полную подачу контента по EF Core!
    Код в этом видео, исключительно для демонстрации возможностей EF, но не применению на проекте. Например, нельзя использовать обновления данных при выборке данных, так как нарушается пратика CQRS.

  • @AnnaKomarova-g9e
    @AnnaKomarova-g9e 7 หลายเดือนก่อน

    Добрый день! Что нужно настроить, чтобы в браузере можно также как на видео работать с БД PostgreSql? Спасибо

    • @PlatinumTechTalks
      @PlatinumTechTalks  7 หลายเดือนก่อน

      Добрый день! Ответ от докладчика:
      1. поставить docker (Docker Desktop для Windows)
      2. запусть бд:
      docker run \
      -p 5432:5432 \
      --name container-postgresdb \
      -e POSTGRES_PASSWORD=admin \
      -d postgres
      3. запустить pgadmin: docker run \
      -p 5050:80 \
      -e "PGADMIN_DEFAULT_EMAIL=name@example.com" \
      -e "PGADMIN_DEFAULT_PASSWORD=admin" \
      -d dpage/pgadmin4
      4. открыть localhost:80
      И ввести такие параметры:
      name: container-postgresdb
      host: host.docker.internal
      database: postgres
      user: postgres
      password: admin

  • @nesnes7621
    @nesnes7621 ปีที่แล้ว

    почему не получается EF core установить. пишет версия не та

  • @AgentsAI-hl6wt
    @AgentsAI-hl6wt 5 หลายเดือนก่อน

    Топ!

  • @nouchance
    @nouchance 2 ปีที่แล้ว

    Thank you Bro!

  • @KINOSHOT999
    @KINOSHOT999 6 หลายเดือนก่อน +1

    На словах мэпится на объект классов все сразу понятно .
    Вы пытаетесь объяснить или сделать так что бы вообще никто ничего не понял ?

  • @StepanGor
    @StepanGor 2 ปีที่แล้ว

    А почему у меня string не допускает null ????

  • @Neo_for_my_chanel4782
    @Neo_for_my_chanel4782 3 ปีที่แล้ว

    Круто!

  • @siera4333
    @siera4333 2 ปีที่แล้ว +1

    Привет, у меня вопрос. Я не совсем понимаю почему, но EF не добавляет данные в базу, точнее так - данные есть, но они не отображаются в MSSQL менеджере. При добавлении и удалении данных всё работает как надо. Но таблицы в менеджере пустые. mdf файла в папке bin\Debag у меня нет

    • @saintefim9978
      @saintefim9978 ปีที่แล้ว

      Ты смог решить данную проблему ?

  • @yuryermolov13
    @yuryermolov13 3 ปีที่แล้ว +1

    Можно поитересоваться почему в видео используется EF Core 5, а не EF Core 6?

    • @maflend2762
      @maflend2762 3 ปีที่แล้ว +3

      Возможно потому что 6 версия ef используется только в. NET 6, который на момент выпуска видео только релизнулся

  • @amirkamolov9049
    @amirkamolov9049 2 ปีที่แล้ว

    На 51:30 когда рассказывали про связь один к одному забыли добавить навигационное свойство Address в классе Person. И в базе из-за этого не создалось ограничение

  • @vael6555
    @vael6555 หลายเดือนก่อน

    Искал алмаз, а нашел золото, лучшие!)

  • @shonchvibe
    @shonchvibe 3 ปีที่แล้ว

    С П А С И Б О !

  • @artak9439
    @artak9439 7 หลายเดือนก่อน

    1:44:42 Это работает только когда делаешь Include

  • @IQ-120
    @IQ-120 3 หลายเดือนก่อน

    54:00 вопрос: а как так связи строятся один к одному? Примари ключи совпадают что ли? И Нахера гемморой такой?

    • @PlatinumTechTalks
      @PlatinumTechTalks  3 หลายเดือนก่อน

      Да, примари ключи должны совпадать.
      И в одной таблице примари ключ - должен быть одновременно примари ключом + форейн Кеем на другую таблицу.
      modelBuilder.Entity()
      .HasOne(e => e.Header)
      .WithOne(e => e.Blog)
      .HasForeignKey(e => e.BlogId)
      .IsRequired();

    • @IQ-120
      @IQ-120 3 หลายเดือนก่อน

      @PlatinumTechTalks бедный sql как же ему две таблички разруливать на identity? Может проще одну табличку иметь в таком случае?

  • @GUTAPUCT
    @GUTAPUCT 3 ปีที่แล้ว +2

    А куда делся Вася-то?

  • @Enwix7777
    @Enwix7777 8 หลายเดือนก่อน

    ПОсле метанита, вживую еще раз закрепить знания самое то

  • @ebaysher572
    @ebaysher572 3 ปีที่แล้ว +1

    а можно сылку на сам доклад?

    • @OlegTar
      @OlegTar 3 ปีที่แล้ว

      В гитхабе презентация

    • @ebaysher572
      @ebaysher572 3 ปีที่แล้ว

      @@OlegTar официальная от майкрософт?

    • @OlegTar
      @OlegTar 3 ปีที่แล้ว

      @@ebaysher572 официальная от Platinum Dev. в описании ссылка

    • @ebaysher572
      @ebaysher572 3 ปีที่แล้ว

      @@OlegTar благодарю

  • @nurlant4547
    @nurlant4547 3 ปีที่แล้ว +2

    можно смотреть на скорости 2 ))

  • @Яна-ъ5к
    @Яна-ъ5к ปีที่แล้ว +1

    Спасибо. Единственное что было тяжело слушать «эээ» и «ааа»

  • @alexmatveev7730
    @alexmatveev7730 2 ปีที่แล้ว

    спасибо за топик, но слушать иногда крайне сложно из-за оратора( такое чувство, что у него вот-вот батарейка сядет. прям местами умирающий лебедь

  • @АртемАрте-г5х
    @АртемАрте-г5х 2 ปีที่แล้ว

    Какая-то у вас устаревшая информация из EF тел 5 назад. Никакой не нужно DepartmaentId делать в Departament. Достаточно просто Id как и во всех других сущностях.

  • @nesnes7621
    @nesnes7621 ปีที่แล้ว

    Microsoft.EntityFramework обычный устанавливает только

    • @PlatinumTechTalks
      @PlatinumTechTalks  11 หลายเดือนก่อน

      не тот тип проекта скорее всего

  • @rx9646
    @rx9646 ปีที่แล้ว

    th-cam.com/video/eHayUiqBXK4/w-d-xo.html явная ошибка в интерпретации по наименованию полей, с чего это вдруг нельзя называть одноименно в разных сущностях. Можно называть ID и в классе персоны и в департаменте!!!

  • @IQ-120
    @IQ-120 3 หลายเดือนก่อน

    И все же, если не секрет - сколько зп у Сеньера?

    • @PlatinumTechTalks
      @PlatinumTechTalks  3 หลายเดือนก่อน +1

      Везде по разному)

  • @ДенисЕгоров-ь3в
    @ДенисЕгоров-ь3в 2 ปีที่แล้ว

    Насчет fluent API и атрибутов категорически не согласен. Я тоже начинал с fluent, но после создания десятков Entity и даже отдельных классов под них ты в любом случае будешь путаться.
    В то же время можно настроить на обязательную установку атрибутов для Entity и на этапе обновления модели EF ты уже будешь знать где забыл атрибут

  • @MultiVVL
    @MultiVVL 11 หลายเดือนก่อน +1

    якщо прибрати усі еее, аааа, ооо, вот і давайте - відос був би значно менший

    • @PlatinumTechTalks
      @PlatinumTechTalks  11 หลายเดือนก่อน

      можна просто прискорити відео =)

  • @light2night
    @light2night ปีที่แล้ว

    Если джуниору нужно знать ответы на вопросы по типу "Как создать связь много-ко-многим с дополнительными данными?", то я уже могу пробовать устраиваться на работу

  • @disol588
    @disol588 ปีที่แล้ว +1

    Без обид, но никакой системы. Лучше бы несколько мини-проектов с примерами. Больше понимания было бы. С формами никто походу работать не умеет и с PostgreSQL...
    Галопом пробежали без проектов. Нет чтобы загрузить готовую БД и обработать.
    Кто в C# будет пданные вписывать? Используют готовые таблицы обычно и обрабатывают. Только почему то именно это видимо не интересно 😅
    Удобно, если кто уже понимает и нужно или освежить память или момент какой то непонятный посмотреть...хотя тогда в коде проще... Не знаю, ожидала больше толку.😢

    • @PlatinumTechTalks
      @PlatinumTechTalks  11 หลายเดือนก่อน

      спасибо за фидбек)

  • @dr1n
    @dr1n 2 ปีที่แล้ว

    2ч + серьёзно?

  • @orhanaliyev9774
    @orhanaliyev9774 2 ปีที่แล้ว

    Это пытка его слушать....он что подготовиться не мог, запинается,неуверенно говорит.

  • @nesnes7621
    @nesnes7621 ปีที่แล้ว

    помогите

  • @xy777top
    @xy777top 4 หลายเดือนก่อน

    Очень жестокое видео, автор сильно избивает кнопку Enter

  • @Бойправ-ж8ы
    @Бойправ-ж8ы 5 หลายเดือนก่อน

    вся эта энтети - херня полнейшая.

  • @Emperor_Of_Mankind_51
    @Emperor_Of_Mankind_51 2 ปีที่แล้ว +1

    Ааа... Эээ... Ы... Ээээ.... Ааа... Эээ...
    Вот поменьше бы этих эканий, слушать было бы раза в 3 легче.

  • @nesnes7621
    @nesnes7621 ปีที่แล้ว

    Error Could not install package 'Microsoft.EntityFrameworkCore 6.0.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.7.2', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.

    • @PlatinumTechTalks
      @PlatinumTechTalks  11 หลายเดือนก่อน

      таргет проекта Framework потому что

    • @fentan6806
      @fentan6806 10 หลายเดือนก่อน

      Ты если ставишь ef core на .net 7 выбирай версию не ласт, а начинающеюся на 7. Если на .net 6, то версию на 6