「.NET & Mono」のmysql-connector-net-6.5.4-noinstall.zipを取得しました。MSVS で使用しましたが、問題はありませんでした。mono 2.10 を使用して Linux でバイナリを実行しようとすると、mysql dll が無効であるというエラーが表示されます。モノラル開発を見ると、実際にDLLを参照できます。コンパイラをビルドしようとすると、名前が無効であると主張するフィットがスローされます
Windowsでビルドされたバイナリを実行すると、代わりにこの例外が発生します
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies.
File name: 'MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d'
これを機能させるにはどうすればよいですか?注: 3.5 で構築しましたが、使用する予定のサーバーには mono 2.6 しかないため、.NET 4 にアップグレードできません。
-編集-
サーバーの発言を確認したところ、この例外が発生しました。mysql.data.dll が同じディレクトリにあることに注意してください。
** (MySqlTest.exe:28256): WARNING **: The following assembly referenced from /root/apps/MySqlTest/MySqlTest.exe could not be loaded:
Assembly: MySql.Data (assemblyref_index=2)
Version: 6.5.4.0
Public Key: c5687fc88969c44d
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/root/apps/MySqlTest/).
** (MySqlTest.exe:28256): WARNING **: Could not load file or assembly 'MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies.
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d' or one of its dependencies.
File name: 'MySql.Data, Version=6.5.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d'