PowerShell中刚刚被打开来源(V6.0.0-alpha.10),和我 好一会才从OS X的连接到MySQL实例错误0x80131047加载MySQL连接DLL
甲骨文似乎建议(如果我正确阅读)他们有一个 。核心连接器 here。 我跑的安装是这样的:
Install-Package MySql.ConnectorNET.Entity -Destination /MySQL
和输出看起来很不错:
Name Version Source Summary ---- ------- ------ ------- MySql.ConnectorNET.Data 6.8.3.2 nugget ADO.Net driver for MySQL MySql.ConnectorNET.Entity 6.8.3.2 nugget MySql Connector/NET for Entity Framework 6
当我尝试加载这样的装配:
[System.Reflection.Assembly]::Load(/MySQL/MySql.ConnectorNET.Data.6.8.3.2/lib/net45/MySql.Data.dll)
我得到以下错误(请注意我通过 变量$dll
)的路径:
Exception calling "Load" with "1" argument(s): "Could not load file or assembly '/MySQL/MySql.ConnectorNET.Entity.6.8.3.2/lib/net40/MySql.Data.dll, Culture=neutral, PublicKeyToken=null'. The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)" At /development/scripts/test.ps1:28 char:1 + [System.Reflection.Assembly]::Load("$dll") + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId : FileLoadException
解决方法/修复的任何想法?我意识到PowerShell仍然在 alpha。
编辑
我能够使用这两个命令来安装MySQL提供:
Register-PackageSource -Name nuget.org -ProviderName NuGet -Location https://www.nuget.org/api/v2/
Install-Package MySql.Data.EntityFrameworkCore -Destination /Volumes/Main/libraries/MySQL/ -AllowPrereleaseVersions
我尝试注册所有我能想到的组件:
Microsoft.EntityFrameworkCore.1.0.1/lib/netstandard1.3/Microsoft.EntityFrameworkCore.dll Microsoft.Extensions.Configuration.1.0.0/lib/netstandard1.1/Microsoft.Extensions.Configuration.dll Microsoft.Extensions.Configuration.Json.1.0.0/lib/netstandard1.3/Microsoft.Extensions.Configuration.Json.dll MySql.Data.EntityFrameworkCore.7.0.5-IR21/lib/netstandard1.6/MySql.Data.EntityFrameworkCore.dll MySql.Data.7.0.5-IR21/lib/netstandard1.6/MySql.Data.dll
但,当试图创建一个新的MySql对象时,它仍然弹出 这个:
新对象:找不到类型[MySql.Data.MySqlClient]: 验证包含此类型的程序集是否已加载。
道歉如果格式有点奇怪 - 我无法弄清楚如何摆脱可怕的'您的帖子看起来包含的代码格式不正确'message – Jeremy