我刚接触使用asp.net的MySQL,我正在尝试使用asp.net mvc 4和实体框架6来查看来自MySQL和MySQL的数据。 MSSQL数据库都是。到目前为止,MSSQL工作正常。但每当我尝试从MySQL表中查看数据时,我都会收到此错误,
Schema specified is not valid. Errors: Models.MySqlModel.ssdl(2,2) : error
0152: No Entity Framework provider found for the ADO.NET provider with
invariant name 'MySql.Data.MySqlClient'. Make sure the provider is registered
in the 'entityFramework' section of the application config file. See
http://go.microsoft.com/fwlink/?LinkId=260882 for more information.
我为Visual Studio 1.1.4安装了 MySQL & MySQL Connector .NET 6.8.3 ,我在参考文件夹中添加了MySql.Data
,MySql.Data.Entity.EF5
,MySql.Data.Entity.EF6
个程序集。这是我的 Web.Config 数据库连接代码,
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-ABCoLtd-20150101142609;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-ABCoLtd-20150101142609.mdf" />
<add name="mytestdbEntities" connectionString="metadata=res://*/Models.SampleModel.csdl|res://*/Models.SampleModel.ssdl|res://*/Models.SampleModel.msl;provider=System.Data.SqlClient;provider connection string="data source=DREAGLEASUS64\SQLEXPRESS;initial catalog=mytestdb;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient" /><add name="mdsdata_demoEntities" connectionString="metadata=res://*/Models.MySqlModel.csdl|res://*/Models.MySqlModel.ssdl|res://*/Models.MySqlModel.msl;provider=MySql.Data.MySqlClient;provider connection string="server=localhost;user id=root;password=4de570;database=mdsdata_demo"" providerName="System.Data.EntityClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
<parameters>
<parameter value="v11.0" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
来自Controller的代码,用于查看MySQL表中的数据,
namespace ABCoLtd.Controllers
{
public class HomeController : Controller
{
mytestdbEntities db = new mytestdbEntities(); //MSSQL Model
mdsdata_demoEntities dsedb = new mdsdata_demoEntities(); //MySQL Model
public ActionResult InstrumentList()
{
return View(dsedb.mkistats.ToList()); //The Line showing error
}
}
}
我在这里做错了吗?我非常需要这个帮助。请帮助我,非常感谢您的帮助。 TNX。
更新
当我在Reference Manager
中看到6.8.3.0
时,Properties
但在6.8.4.0
我看到了{{1}}。这可能是错误吗?如果是,解决方案是什么?见下图,
答案 0 :(得分:0)
检查您是否安装了正确的位版本并在IIS中启用了32位应用程序。
并尝试删除其中一个引用