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 プロファイルには存在しないのでしょうか? 1 assemblies, AssemblyDefinition assembly, Boolean topLevel) at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(Listファイル名: Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences (リスト1 アセンブリ、AssemblyDefinition アセンブリ、Boolean topLevel)の Xamarin.Android.Tuner.DirectoryAssemblyResolver.Resolve (AssemblyNameReference 参照、ReaderParameters パラメーター) の 'System.Configuration.Install.dll' Xamarin.Android.Tasks.ResolveAssemblies.Execute() で

誰が私が間違っているのか教えてもらえますか? 前もって感謝します

4

3 に答える 3

0

これは少し古い質問であることは知っていますが、私の答えは同じ問題を抱えている人々に役立つと思います.

そのため、MySql.Data.dll を使用して Android アプリとデータベースを直接接続する場合、例外が発生すると思います。このアプローチのセキュリティ リスクを知っているが、それでもこの方法で実行したい場合は、MySql.Data.dll の代わりに MySql.Data.CF.dll を使用する必要があります。これにより、例外が削除されます(少なくとも私の場合はそうでした)。

ただし、Web サービスを使用してデータベースとの対話を可能にすることをお勧めします。

私の答えが役に立てば幸いです。

于 2016-07-10T08:44:46.080 に答える
0

PCL (Portable Class Library) でない限り、コンパイルされたデスクトップ .Net ライブラリを Xamarin プロジェクトで実際に使用することはできません。

ここから MySQL.Data のソースをダウンロードすることをお勧めします。

次に、Android ライブラリ プロジェクトを作成し、すべての C# ファイルをリンクします。かなり単純なはずですが、コンパイル エラーが 1 つまたは 2 つ発生する可能性があります。ほとんどの作業は、Xamarin の .Net サブセットに存在しないものを削除することです。

于 2013-09-12T12:02:18.297 に答える
0

デバイス ローカル ソリューションを探している場合は、SQLLite ソリューションを実装するのではなく、MySQL ソリューションを装備することをお勧めします。SQLLite は十分にサポートされており、OS によってネイティブにサポートされています。このリンクをチェックして、Xamarin からアイテムを直接入手してください。 http://components.xamarin.com/view/sqlite-net/ 私はそれを使用して運が良かったです。

または、外部の MySQL 接続を探している場合は、このリンクがここにあります。 http://www.mono-project.com/MySQL

幸運を!

于 2013-10-01T06:08:42.203 に答える