名前のないアセンブリの代わりに厳密な名前のアセンブリを使用する方法はありますか?
本当の質問はこれです:
プラットフォーム (iOS、 Android、WP、デスクトップ、および WinRT)。このライブラリ (SqliteOrm.dll) は、各プラットフォームのアプリケーションによって使用されますが、System.Data.dll が切り替わります。
ただし、System.Data.dll は厳密な名前で GAC に存在します。これにより、ライブラリが消費されるときに例外が発生します。
System.IO.FileNotFoundException:
Could not load file or assembly 'System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
The system cannot find the file specified.
私がこれを行っている理由は、System.Data.dll が WP には存在せず、M4A には存在するためです。M4A ではネイティブの System.Data.dll を使用していますが、WP では独自のバージョンを使用しています。私のバージョンには必要なタイプしか含まれていないため、このように異なります。
現在、Metro アプリとデスクトップ アプリを使用してテストしていますが、ここで例外が発生しています。M4A ランタイムが実際にはチェックを行わないという事実について、漠然と覚えていますが、ライブラリをデスクトップでも動作させたいと考えています。
誰かが私に何かヒントを持っていますか、それともこれはすべて悪い習慣ですか?