在谷歌上找不到任何与实体框架/MySQL相关的东西,所以我希望有人知道它。
当前回答
MySQL将在几天内举办一个关于EF的网络研讨会… 看这里:http://www.mysql.com/news-and-events/web-seminars/display-204.html
编辑:该网络研讨会现在在http://www.mysql.com/news-and-events/on-demand-webinars/display-od-204.html
其他回答
我没有看到这里的链接,但有一个beta。net连接器MySql。点击“开发版本”下载6.3.2 beta版,它集成了EF4/VS2010:
http://dev.mysql.com/downloads/connector/net/5.0.html#downloads
小心使用连接器。net,连接器6.6.5有一个错误,它不能插入tinyint值作为身份,例如:
create table person(
Id tinyint unsigned primary key auto_increment,
Name varchar(30)
);
如果你尝试像这样插入一个对象:
Person p;
p = new Person();
p.Name = 'Oware'
context.Person.Add(p);
context.SaveChanges();
你会得到一个空引用异常:
Referencia a objeto no establecida como instancia de un objeto.:
en MySql.Data.Entity.ListFragment.WriteSql(StringBuilder sql)
en MySql.Data.Entity.SelectStatement.WriteSql(StringBuilder sql)
en MySql.Data.Entity.InsertStatement.WriteSql(StringBuilder sql)
en MySql.Data.Entity.SqlFragment.ToString()
en MySql.Data.Entity.InsertGenerator.GenerateSQL(DbCommandTree tree)
en MySql.Data.MySqlClient.MySqlProviderServices.CreateDbCommandDefinition(DbProviderManifest providerManifest, DbCommandTree commandTree)
en System.Data.Common.DbProviderServices.CreateCommandDefinition(DbCommandTree commandTree)
en System.Data.Common.DbProviderServices.CreateCommand(DbCommandTree commandTree)
en System.Data.Mapping.Update.Internal.UpdateTranslator.CreateCommand(DbModificationCommandTree commandTree)
en System.Data.Mapping.Update.Internal.DynamicUpdateCommand.CreateCommand(UpdateTranslator translator, Dictionary`2 identifierValues)
en System.Data.Mapping.Update.Internal.DynamicUpdateCommand.Execute(UpdateTranslator translator, EntityConnection connection, Dictionary`2 identifierValues, List`1 generatedValues)
en System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager, IEntityAdapter adapter)
en System.Data.EntityClient.EntityAdapter.Update(IEntityStateManager entityCache)
en System.Data.Objects.ObjectContext.SaveChanges(SaveOptions options)
en System.Data.Entity.Internal.InternalContext.SaveChanges()
en System.Data.Entity.Internal.LazyInternalContext.SaveChanges()
en System.Data.Entity.DbContext.SaveChanges()
到目前为止,我还没有找到一个解决方案,我必须将我的tinyint标识改为unsigned int标识,这解决了问题,但这不是正确的解决方案。
如果您使用旧版本的Connector.net(我使用6.4.4),就不会遇到这个问题。
如果有人知道解决方案,请与我联系。
干杯!
Oware
你也可以看看https://www.devart.com/dotconnect/mysql/
DevArt的连接器支持EF和MySQL。
MySQL将在几天内举办一个关于EF的网络研讨会… 看这里:http://www.mysql.com/news-and-events/web-seminars/display-204.html
编辑:该网络研讨会现在在http://www.mysql.com/news-and-events/on-demand-webinars/display-od-204.html
Vintana,
当然有现成的了。http://www.devart.com/products.html -虽然它是商业的(你有一个30天的试用IIRC)。他们靠写作为生,所以我想它应该又快又稳定。我知道一些大公司使用他们的Oracle供应商而不是Orace和MS。
推荐文章
- 我如何能使一个组合框不可编辑的。net ?
- .NET反射的成本有多高?
- 实体框架回滚并移除不良迁移
- 将流转换为字符串并返回
- IEquatable和重写Object.Equals()之间的区别是什么?
- 我如何得到“id”后插入到MySQL数据库与Python?
- 创建一个堆栈大小为默认值50倍的线程有什么危险?
- MySQL工作台:如何保持连接活动
- 'create_date'时间戳字段的默认值无效
- 选择Enum类型的默认值而无需更改值
- String与StringBuilder
- 远程主机强制关闭现有连接
- 为什么ReSharper想要使用'var'的一切?
- 我可以从一个完整的mysql mysqldump文件恢复一个表吗?
- 如何检查一个对象是否为空?