Русский
Открыть в Telegram
DDotNetRuChat

DotNetRuChat

@DotNetRuChat · группа · Технологии · в индексе с 24.05.2026
7 538участников−20 за неделю
106пишущих за 30 дней
1 443сообщений за 30 дней
753 136сообщений в индексе
К
  1. С
    Так не бывает. Джоин данных в базе и джоин данных на стороне приложения это разные операции с разными стратегиями исполнения, разной вычислительной и архитектурной сложностью. Не надо прятать это.
      1. С
        они анализируют наличие индексов и статистику, разбирают и упрощают все запросы. вы уверены что это стоит тащить на уровень приложения, если надо просто забрать из другого сервиса данные клиентов и приджоинить их к данным заказов?
Вся ветка · 4 ответа →
К
сетевое взаимодействие происходит в обоих случаях, что с базой, что с сервисом, со всеми прелестями обработки ошибок и ИО. протокол и набор поддерживаемых операций разный, но это абстрагируется: буквально существует linq to graphql. не EF конечно, но...
С
Ivan VoyagerНедавно написал новую систему миграций в своем фреймворке, там для 1 бд и тоже с разными контекстами (модулями), у меня упор на проиизводительность, поэтому фреймворк более низкоуровневый и для десктопа). Стас, можешь сказать, как в EF и в твоем подходе решается порядок миграций разных модулей, когд
в статье описана такая картина: - модули собираются в одну модель EF - миграции генерируются по полной модели из всех модулей Модулей много, но модель одна и никаких зависимостей нет. Все внутри разруливает сам EF. Порядок сборки полной модели задается порядком загрузи модулей. В следующих статьях будет описание кодогенератора для этого дела, а п в этой просто строкой вбито в DesignTimeFactory для EF
  1. I
    то есть там идеальная картина в вакууме, когда модули не зависят от других, верно? но ведь хотя бы есть какие-то базовые миграции для таблиц core, которые могут использовать модули? или прям реально у всех свои таблицы и никак данные не пересекаются? идеальный мир) Порядок сборки полной модели задается порядком загрузи модулей. - то есть миграции будут применяться по порядку загрузки?) это детерменированный механизм?)
    1. С
      нет. Прочитайте статью внимательно, посмотрите код Там есть есть модуль CustomerOrders, который зависит от Customer.Entities и Order.Entities Более того CustomerOrders еще и внешний ключ между сущностями добавляет в модель. Но все они собираются в итоге в одну модель и миграции создаются по полной модели
      1. I
        я прочитал, про порядок миграций ни слова не нашел, тыкнете носом, если возможно.
    2. С
      давайте сначала Как работают миграции в EFCore: - У вас есть модель, которая собирается как-то в коде - У вас в коде лежит снэпшот предыдущей модели - Когда вы делаете dotnet migrations add запускается ваше приложение, из него достается актуальная модель, загружается снэпшот и делается их дифф. Дифф сохраняется в качестве новой миграции - каждая миграция - просто класс с методами Up и Down. Up приводит схему от предыдущего состония к текущиему, а Down наоборот. - миграции выполняются последовательно, отсортированные по строке в атрибуте Migration Одна модель - один набор миграций, которые выполняются последоватеьно. Никаких зависимостей между ними нет, кроме последователньости. Я описал как модель собирать по кускам из модулей. Итоговая модель зависит от порядка модулей. Миграции генерируются всегда по полной модели - всем модулями заданным в нужном порядке.
Вся ветка · 6 ответов →
I
и тем не менее, насколько мне известно в EF никаких порядков, построенных на зависимостях нет, верно?
I
да, это логично, если не столкнуться с такой проблемой)
I
Файл
image_2026-11-06_15-05-01.png · 26 КБ · нажмите — покажем
я говорил про примерно такой подход (пример синтетический)
  1. С
    имхо зависимости миграций это рак, который убьет ваш проект. Если в вас все лежит в одной базе, то почему бы просто в одну модель это не засунуть?
    1. I
      с чего такой вывод? а там нет одной модели. это, например, плагинная система модулей. обычная задача, которая средствами EF не решается.
      1. С
        в моих примерах описывается сценарий когда все модули известны при компиляции и нет никакой "плагинной системы" с неизвестным составом на момент компиляции для любых плагинов всегда надо понимать насколько вы им доверяете и уже исходя из этого делать архитектуру
        1. I
          я понимаю, поэтому и спросил как обстоит дело в EF. Выяснили что также ничего не предлагается..
Вся ветка · 4 ответа →
C
Привет, Евдокия Фомина, нажми кнопку шесть, чтобы тебя не забанили!
C
Привет, ኸዐሃይፐዐፎል (@CHEF_2039), нажми кнопку один, чтобы тебя не забанили!

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем