如何在Android Project中使用MySql.Data.dll?

时间:2013-09-12 10:47:12

标签: c# android xamarin.android xamarin

我是Android应用程序的新手, 在我的带有C#base的android应用程序中,我想使用MySqlConnection。 但是当我添加MySql.Data.dll的引用时,它在VS 2010中给了我异常并且无法运行我的应用程序。

异常

  加载程序集时出现

异常:System.IO.FileNotFoundException:无法加载程序集'System.Configuration.Install,   Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'。   也许它在Mono for Android配置文件中不存在?文件名:   'System.Configuration.Install.dll'在   Xamarin.Android.Tuner.DirectoryAssemblyResolver.Resolve(AssemblyNameReference   参考,ReaderParameters参数)at   Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(列表1 assemblies, AssemblyDefinition assembly, Boolean topLevel) at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List 1   程序集,AssemblyDefinition程序集,布尔topLevel)at   Xamarin.Android.Tasks.ResolveAssemblies.Execute()

谁能告诉我我做错了什么? 提前致谢

3 个答案:

答案 0 :(得分:0)

除非是PCL(可移植类库),否则您无法将已编译的桌面.Net库与Xamarin项目一起使用。

最好的办法是下载MySQL.Data here的源代码。

然后制作一个Android库项目,并链接所有C#文件。它应该相当简单,但您可能会遇到一两个编译器错误。大部分工作将删除Xamarin的.Net子集中不存在的内容。

答案 1 :(得分:0)

如果您正在寻找设备本地解决方案,您可能希望尝试实施SQLLite解决方案而不是尝试装配MySQL解决方案。 os支持并且本机支持SQLLite。看看此链接直接从Xamarin获取项目。 http://components.xamarin.com/view/sqlite-net/ 我有很多运气使用它。

或者,如果您正在寻找外部MySQL连接,那么这里有这个链接。 http://www.mono-project.com/MySQL

祝你好运!

答案 2 :(得分:0)

我知道这是一个有点老问题,但我认为我的答案可以帮助有同样问题的人。

因此,我认为当您想使用MySql.Data.dll直接将Android应用程序与数据库连接时会发生异常。每个知道此方法中的安全风险但仍希望以这种方式执行此操作的人应该使用MySql.Data.CF.dll而不是MySql.Data.dll。这将删除异常(至少在我的情况下)。

但是,我建议使用Web Service启用与数据库的交互。

希望我的回答很有帮助。