2

我是 Android 应用程序的新手,在我的具有 C# 基础的 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 配置文件中不存在?文件名:Xamarin.Android.Tuner.DirectoryAssemblyResolver.Resolve 中的“System.Configuration.Install.dll”(AssemblyNameReference 参考,ReaderParameters 参数)在 Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(列表1 assemblies, AssemblyDefinition assembly, Boolean topLevel) at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List1 程序集,AssemblyDefinition 程序集,布尔顶级)在 Xamarin.Android.Tasks.ResolveAssemblies.Execute()

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

4

3 回答 3

0

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

最好的办法是在此处下载 MySQL.Data 的源代码。

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

于 2013-09-12T12:02:18.297 回答
0

如果您正在寻找设备本地解决方案,您可能想尝试实施 SQLLite 解决方案而不是尝试安装 MySQL 解决方案。SQLLite 得到了很好的支持,并且被操作系统原生支持。查看此链接以直接从 Xamarin 获取项目。 http://components.xamarin.com/view/sqlite-net/ 我很幸运使用它。

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

祝你好运!

于 2013-10-01T06:08:42.203 回答
0

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

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

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

希望我的回答有帮助。

于 2016-07-10T08:44:46.080 回答