Pomyślałem, że poeksperymentuję trochę z pierwszym serwerem Scotta Guthriego latest post z programem Entity Framework 4. Zamiast używać serwera Sql, próbuję użyć MySql. Oto odnośne części mojego web.config (to jest 2 app Asp.Net MVC):Używanie MySql z Entity Framework 4 i Code-First Development CTP
<connectionStrings>
<add name="NerdDinners"
connectionString="Server=localhost; Database=NerdDinners; Uid=root; Pwd=;"
providerName="MySql.Data.MySqlClient"/>
</connectionStrings>
<system.data>
<DbProviderFactories>
<add name="MySQL Data Provider"
invariant="MySql.Data.MySqlClient"
description=".Net Framework Data Provider for MySQL"
type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.2.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
Podobnie jak w tutorialu Czekam EF4 wygenerować db dla mnie automatycznie. Zamiast tego generuje wyjątek ProviderIncompatibleException, z wewnętrznym wyjątkiem narzekającym, że baza danych NerdDinners nie istnieje.
Wystarczająco fair; Poszedłem i stworzył bazę danych MySql dla tego celu, aby sprawdzić, czy wszystko zadziała, i uzyskałem inny wyjątek ProviderIncompatibleException. Tym razem "DatabaseExists nie jest obsługiwany przez dostawcę".
Przyznam, że po raz pierwszy naprawdę zagłębiam się w Entity Framework (utknąłem głównie na Linq na Sql), a to wszystko działa na CTP wydanym w zeszłym tygodniu. To powiedziawszy, czy jest coś, co robię źle tutaj, czy znany problem, który można rozwiązać?
Masz rację, istnieje dostawca mysql (http://stackoverflow.com/questions/76488/using-mysql-with-entity-framework/848539#848539). Możliwe, że bity CTP zawierają błędy lub że operatorowi MySQL brakuje funkcjonalności (lub obu). – marcind
Czy możesz używać prostego członkostwa w MVC 4 z MySQL? –