MySql 连接器/网络无法正常工作。处理 bug 的团队只有 3 个人,他们不解决复杂的问题。自 2009 年以来仍有未解决的问题。我想自定义他们的连接器,以便它适用于我的复杂情况。如何在我的项目中使用自定义版本而不是他们的?
2 回答
步骤 1) 下载
为了自定义 oracle 的 mysql 连接器/网络版本,您必须在此处下载源代码:http: //dev.mysql.com/downloads/connector/net/
步骤 2) 打开
接下来,您将不得不解压缩下载的源文件。连接器的核心将在两个项目中,MySql.Data
以及MySql.Data.Entity
(什么是 mysql 提供程序?)。
步骤 3) 编辑连接器
对您希望的类进行任何编辑,以解决您的复杂情况。
步骤 4) 删除签名
此步骤将使重新分发您的编辑变得不受欢迎,您可以签名并根据需要进行更改,但对于本地部署,这是不必要的。
MySql.Data.Entity
的AssemblyInfo.cs
注释掉这一行:
//[assembly: AssemblyKeyName("ConnectorNet")]
MySql.Data
'内部AssemblyInfo.cs
进行以下更改:
//[assembly: AssemblyKeyName("ConnectorNet")]
[assembly: InternalsVisibleTo("MySql.Data.Entity")]
步骤 5) 按顺序编译和构建
MySql.Data
先建。建成后,打开MySql.Data.Entity
. 将出现无法找到的警告MySql.Data
。添加对文件夹MySql.Data
内部新建的引用。bin/Debug
构建MySql.Data.Entity
为Release
.
步骤 6) 移动文件
bin/Release
的文件夹里面MySql.Data.Entity
应该是MySql.Data
和MySql.Data.Entity
。取每个并覆盖项目package
文件夹中的对应项。
步骤 7) 更新项目中的引用
在您的项目内部,转到参考区域。删除MySql.Data
和MySql.Data.Entity
。右键单击References
,单击Add Reference
,选择Browse
选项卡,导航到包文件夹,然后将两者都添加MySql.Data
到MySql.Data.Entity
您在步骤 6 中放置的位置。
步骤 8) 修改web.config
将多次提及MySql.Data
inside of web.config
。它们中的每一个都将具有PublicKeyToken=c5687fc88969c44d
必须删除的(从所有这些中删除)。
步骤 9) 做到这一点
享受您的定制连接器!