Mẹo để giải quyết vấn đề này là:
- Thêm tham chiếu vào
MySql.DatavàMySql.Data.Entitythư viện của phiên bản chính xác (6.7.4.0 cho .NET 4.5, trong trường hợp của tôi) cho dự án. - Chỉnh sửa
machine.configvới trình soạn thảo của bạn chạy với tư cách quản trị viên và thay thế tất cả các lần xuất hiện của phiên bản MySQL6.6.5.0bởi6.7.4.0.
Đối với bước thứ hai, hãy lưu ý rằng có nhiều machine.config các tệp, một tệp cho mỗi phiên bản khung (3.0, 3.5, 4.0) và kiến trúc (32-bit, 64-bit). Cũng lưu ý rằng machine.config tệp cho .NET 4.5 nằm trong thư mục .NET 4.0. Bạn có thể tìm thấy machine.config các tệp trong:
Và:
Nếu không có tham chiếu đến MySQL trong machine.config , bạn có thể chưa cài đặt MySQL cho Visual Studio
. Làm điều đó hoặc thêm phần sau vào app.config tệp dự án của bạn:
<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.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
Tuy nhiên, lưu ý rằng khi bạn cài đặt cả MySQL for Visual Studio và thêm đoạn mã trên vào app.config của bạn tệp, sau đó bạn sẽ nhận được ngoại lệ này: