首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Mac上使用DbLinq SqlMetal for MySQL?

如何在Mac上使用DbLinq SqlMetal for MySQL?
EN

Stack Overflow用户
提问于 2011-03-02 05:02:58
回答 3查看 3K关注 0票数 2

我在Mac上使用Mono/MonoDe信封,我想要一个使用SqlMetal (随Mono一起包含的DbLinq版本)用于LINQ和MySQL数据库的示例。

奇怪的是,我为SQLite找到了许多例子,但MySQL却没有。为MySQL找到的例子似乎是指微软的SqlMetal.exe。

我试图安排来自SQLite的SQLite命令,使其适合MySQL,但我有一条消息:

sqlmetal:无法加载databaseConnectionType类型'ByteFX.Data.MySqlClient.MySqlConnection,ByteFX.Data‘。尝试使用--=TYPE选项。

我们很感激你的帮助!谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-04-09 13:41:51

找到并编辑您的sqlmetal.exe.config,并替换不使用ByteFX (长时间不受支持)的设置,并使用MySql.Data。

记住要包括完全限定的程序集名称,在我的示例中,这一行如下所示:

代码语言:javascript
复制
`provider name="MySQL" dbLinqSchemaLoader="DbLinq.MySql.MySqlSchemaLoader, System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" databaseConnection="MySql.Data.MySqlClient.MySqlConnection, MySql.Data, Version=6.2.3.0, Culture=neutral, PublicKeyToken=2f3544035097bf97"` 

(我安装了带有该版本和令牌的MySql连接器)

问候

票数 3
EN

Stack Overflow用户

发布于 2013-06-12 15:19:06

  1. 下载并安装MySQL连接器/ http://www.mono-project.com/MySQL

cd MySql.Data.dll

  • Browse path_to_your MySql.Data.dll assembly gacutil -i /Library/Frameworks/Mono.framework/Versions/2.10.12/lib/mono/gac/MySql.Data (或更改版本号以与您使用的版本匹配),您应该看到目录,如6.6.5.0__c5687fc88969c44d

  • Open /Library/Frameworks/Mono.framework/Versions/2.10.12/lib/mono/4.0/sqlmetal.exe.config (或与您使用的版本等效),并根据BlackR2D的答案编辑<provider name="MySQL"节点的databaseConnection属性,使用步骤2中文件夹中的属性(例如,PublicKeyToken=c5687fc88969c44d

  • Make和Version=6.6.5.0 ),可以确保您正在运行的项目的路径中没有空格,或者当您选择'Generate‘时,无法找到文件’error

  • ‘,将语言改为C#,而不是C#2,否则您可能会得到一个未设置为对象’error

‘实例的'MonoDevelop.Database.Sql.SqlMetalExecException: sqlmetal: Object引用

然后,我可以生成Output.cs,但是如果试图生成DBML (Output.dbml),仍然会得到一个错误:

代码语言:javascript
复制
'MonoDevelop.Database.Sql.SqlMetalExecException: sqlmetal: Access to the path "//Output.dbml" is denied'
票数 1
EN

Stack Overflow用户

发布于 2011-06-26 21:56:52

我在mono 2.10.2上做了这个工作:

代码语言:javascript
复制
[mono-] ~ @ sqlmetal /namespace:MonoService /provider:MySql "/conn:Server=[server];Database=[db];Uid=[name];Pwd=[pass];" /code:ProxyContext.cs --with-dbconnection="MySql.Data.MySqlClient.MySqlConnection, MySql.Data, Version=6.3.7.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"

在我将MySql.Data放入gac之前:

代码语言:javascript
复制
gacutil -i MySql.Data.dll
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5163585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档