Tôi nghĩ rằng tôi muốn thử nghiệm một chút với Scott Guthrie's latest post trên dev-code đầu tiên với Entity Framework 4. Thay vì sử dụng Sql Server, tôi đang cố gắng sử dụng MySql. Dưới đây là các phần liên quan của web.config của tôi (đây là ứng dụng Asp.Net MVC 2):Sử dụng MySql với Entity Framework 4 và 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>
Giống như hướng dẫn, tôi mong EF4 tự động tạo db cho tôi. Thay vào đó, nó ném ra một ProviderIncompatibleException, với một ngoại lệ bên trong phàn nàn rằng cơ sở dữ liệu NerdDinners không tồn tại.
Đủ công bằng; Tôi đã đi và tạo ra db MySql cho nó chỉ để xem nếu mọi thứ sẽ làm việc, và có một ProviderIncompatibleException thay thế. Lần này, "DatabaseExists không được nhà cung cấp hỗ trợ".
Tôi sẽ thừa nhận, đây là lần đầu tiên tôi thực sự delving vào Entity Framework (tôi đã mắc kẹt chủ yếu để LINQ để Sql), và điều này là tất cả chạy trên Code-First CTP phát hành chỉ tuần trước. Điều đó nói rằng, có cái gì tôi đang làm sai ở đây, hoặc một vấn đề được biết đến mà có thể được làm việc xung quanh?
Bạn đúng, nhà cung cấp mysql không tồn tại (http://stackoverflow.com/questions/76488/using-mysql-with-entity-framework/848539#848539). Có thể các bit CTP có lỗi hoặc nhà cung cấp MySQL thiếu dấu chấm câu (hoặc cả hai). – marcind
là bạn có thể sử dụng thành viên đơn giản trong MVC 4 với MySQL? –