标签:csharp log mysql var provider 需要 ice ide cti
最近发现了一款DDD的框架
看起来不错,据说挺流弊的
刚好最近要弄点小东西,拿来试试也不错
苦于穷逼买不起高配服务器,只好装mysql数据库了
下面说下如何在该框架下使用Mysql数据库
打开项目后,在“程序包管理器控制平台”中选择*.EntityFramwork以及*.Web项目(*号为你的项目名称前缀)
Install-Package MySql.Data.Entity // Install-Package MySql.Data.Entity - 安装MySql.Data.Entity组件的命令
输入以上语句安装Mysql的相关组件
然后更改连接字符串
<entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6"> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /> <providers> <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices,MySql.Data.Entity.EF6" />//这里可以看到以及自动为我们引用了mysql的相关项 <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices,EntityFramework.SqlServer" /> </providers> </entityFramework> <connectionStrings> <add name="Default" providerName="MySql.Data.MySqlClient" connectionString="server=localhost;port=3306;database=sampledb;uid=root;password=root" /> </connectionStrings>
然后在“程序包管理控制平台”更新数据库
Update-Database –Verbose
至此,我们就可以使用该项目连接mysql数据库了
实践之中,经常会出现一些想不到的问题
这里记下我自己遇到的几个小问题
1、更新数据库时提示“Specified key was too long; max key length is 767 bytes”
这个问题一般是由于(我认为,欢迎dalao指导)数据库生成器配置不正确导致的,MSSql的相关配置在Mysql里并不是全部适用
这时需要在Dbcontext类上指定生成器的类型
[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))] public class MyContext : DbContext{}
这里的MyContext为你的EF相关类
2、忘了,想起来再写吧
标签:csharp log mysql var provider 需要 ice ide cti
原文地址:http://www.cnblogs.com/ixysy/p/6219719.html