2011-03-30 42 views
4

我遇到以下问题。Mysql - Visual Web Developer - 实体框架

我有Visual Web Developer 2010 Express,我试图让它与Entity Framework和MySQL数据库一起工作。

我已经安装了MySql的.NET连接器,但它似乎并未与Web Developer集成,因为它与Visual Studio 2010(专业版)一起使用。创建ADO.NET实体数据模型的向导要求我将数据连接到数据库,但我无法选择MySql驱动程序,所以无法创建连接,因此总之我无法继续。

事情我试过到目前为止:

1)我已经提到MySql.Data,MySql.Web和MySql.Data.Entity在我的项目,但无济于事。

2)I已经手动在我的web.config创建的连接字符串像这样:

<connectionStrings> 
    <add name="modelEntities" connectionString="metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=MySql.Data.MySqlClient; provider connection string='server=localhost;User Id=simply; database=simply;password=simply'" providerName="System.Data.EntityClient"/ 
</connectionStrings> 

同时,我还添加以下代码:

<system.data> 
    <DbProviderFactories> 
     <clear /> 
     <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.3.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/> 
    </DbProviderFactories> 
</system.data> 

3)I已经改变了先前的连接串为正常连接字符串像这样:

<add name="connection" connectionString="server=localhost;database=simply;uid=simply;password=simply" providerName="System.Data.EntityClient"/> 

4)我已经加入FOLL因为我的machine.config代码(并重新启动计算机):

<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.3.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> 
</DbProviderFactories> 

到目前为止这一直是无济于事。任何人都可以向我指出正确的方向,并向我解释我应该如何让MySql的实体框架启动并运行?

非常感谢你们给我的任何帮助。

+0

Hello @Steven,快速说明,它适用于vs2010 Pro,但不适用于Web Dev?在我的配置中,我没有dbProviderFactories,我的字符串如下所示:''。你有没有试过这些:[安装](http://goo.gl/mUFTG),[连接](http://goo.gl/Q6TkI) – mateuscb 2011-03-31 11:26:28

+0

你好。是。在我的工作中,我们已经有了VS2010 pro,它的功能就像那里的魅力一样。我只有Web Dev在这里。 我已经尝试了您的两个链接,但没有奏效。第一个链接期望.NET连接器出现,但它不会 - 就像Devart评论的那样,这应该是设计行为,因为Web Dev不允许第三方可扩展性。 不幸的是第二个链接有同样的问题。 但感谢您的思考。如果您有任何其他提示/想法,请告诉我。 – 2011-03-31 18:09:29

+0

没问题。看起来像它比我想象的有点强硬。来自@Devart的链接看起来很有希望。祝你好运。如果我遇到其他问题,会发布。 – mateuscb 2011-04-01 01:40:36

回答

4

这是设计的行为 - VS does not allow 3rd party extensibility in Express versions
我们在我们的论坛提供了一些建议here
您也可以尝试使用edmgen来获得相同的结果。

+1

感谢您的帮助。我结束了使用edmgen2来生成我的模型,这工作正常。我觉得我无法从Visual Studio环境更新模型,但我认为这是Express版本的局限性。 – 2011-04-06 13:25:14