вторник, 17 мая 2011 г.

Entity Framework и MySQL

Если вы вдруг соберетесь использовать Entity Framework в связке MySQL, ни за что, на при каких обстоятельствах не используйте родной провайдер MySQL .NET Connector. Это не ADO.NET-провайдер, а кишащее критичными багами, которые не фиксятся годами, недоразумение (по крайней мере в области поддержки Entity Framework).

Из сторонних альтернатив я бы посоветовал продукт dotConnect for MySQL от компании DevArt. Он платный, но стоит вполне адекватных денег.

Я некоторое время назад сделал неправильный выбор, остановившись на стандартном провайдере. Надеюсь, вы не повторите моей ошибки.

4 комментария:

Анонимный комментирует...

если можно чуть более подробно, с какими глюками Вы столкнулись?

Idsa комментирует...

Всего и не упомнишь. Например, неработающий GROUP BY: http://bugs.mysql.com/bug.php?id=46742. Или периодически возникающий InvalidCastException, если в запросе больше трех Join'ов. Еще я порой ужасаюсь, когда вижу, какие запросы он генерит: очень неэффективно.

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

ковалев комментирует...

Fix: ни при каких обстоятельствах не используйте MySQL

Зачем это кастрированное убожество, когда есть нормальные субд?

Анонимный комментирует...

Александр, вероятно не в тему....
Использовал dotConnect for PostgreSQL и получал ошибку (в произвольный промижуток времяни на одном и темже запросе) мол колекция была изменена.....
Можете подсказать в чем дело - вероятно Вы сталкивались с таким ескепшеном.