ASP.Net MVC с MySql - не удается найти запрошенный поставщик данных.Net Framework
Я установил MySql Connector 6.6.5 с http://dev.mysql.com/downloads/connector/net/
Я добавил его в качестве ссылки на свой веб-сайт asp.net MVC (см. Скриншоты ниже) и изменил "Копировать локально" на true.
Однако, когда я доберусь до линии:var calls = db.Calls.ToList();
Я получаю ошибку:
Unable to find the requested .Net Framework Data Provider. It may not be installed.
Я включил свой код ниже. Может кто-нибудь, пожалуйста, дайте мне знать, что мне не хватает?
Спасибо Марк
Контроллер Call.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MySql.Data;
using MySql.Data.Entity;
using MySql.Data.MySqlClient;
using MySql.Web;
using System.Data;
namespace bm.Controllers
{
public class CallController : Controller
{
private CallContext db = new CallContext();
//
// GET: /Calls/
public ActionResult Index()
{
var calls = db.Calls.ToList();
return View(calls);
}
}
}
CallContext.cs
using bm.Models;
using System.Data.Entity;
public class CallContext : DbContext
{
static CallContext()
{
}
public CallContext()
: base("callsConn")
{
}
public DbSet<Call> Calls { get; set; }
}
Строка подключения Web.Config:
<connectionStrings>
<add name="callsConn" connectionString="Server=xxx;Port=3306;Database=xxxx;Uid=root;Pwd=;" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
Рекомендации:
1 ответ
Обновить
Кажется, я решил эту проблему, добавив в свой web.config следующее:
<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.6.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
Надеюсь, это поможет кому-то еще.
отметка