Я создал базу данных в MySQL, и я пытаюсь сопоставить ее с Entity Framework, но я начинаю работать в "GenerateSSDLException", когда я пытаюсь добавить более 20 таблиц в контекст EF.
Исключение типа 'Microsoft.Data.Entity.Design.VisualStudio.ModelWizard.Engine.ModelBuilderEngine + GenerateSSDLException' при попытке обновления из базы данных. Исключение сообщение: "Произошла ошибка во время выполнение определения команды. Видеть внутреннее исключение для деталей.
Неустранимая ошибка при выполнении команды.
Время ожидания истекло. Период ожидания истекает до завершения операции или сервер не отвечает.
Нет ничего особенного в затронутых таблицах, и это никогда не та же таблица (ы), это просто, что после добавления определенного (неспецифического) количества таблиц контекст больше не может обновляться без истечения "Истекло время ожидания", ошибка. Иногда это осталось только один стол, а иногда и три; результаты довольно непредсказуемы. Кроме того, разница в количестве таблиц, которые могут быть добавлены до ошибки, указывает мне, что, возможно, проблема заключается в размере генерируемого запроса для обновления контекста, который включает как существующие определения таблиц, так и новые таблицы, которые добавляются к нему. По сути, SQL-запрос становится слишком большим, и по какой-то причине он не выполняется.
Если я сгенерирую модель с EdmGen2, она работает без каких-либо ошибок, но сгенерированный файл EDMX не может быть обновлен в Visual Studio без создания вышеупомянутое исключение.
По всей видимости, источник этой проблемы лежит в инструменте в Visual Studio, учитывая, что EdmGen2 отлично работает, но я надеюсь, что, возможно, другие могут предложить некоторые советы о том, как подойти к этой очень уникальной проблеме, потому что это похоже на Я не единственный человек, испытывающий это.
Одно предложение, предложенное коллегой, поддерживало два отдельных файла EBMX с некоторым кроссовером таблицы, но это похоже на довольно уродливое исправление, на мой взгляд. Полагаю, это то, что я получаю от попыток использовать "новую технологию".: (