この問題に関するいくつかの議論を見てきましたが、明確な答えはまだ見ていません。確かに、MonoTouch / MonoforAndroidについてはそうではありません。
Xamarinベースのマルチターゲットソリューションを開発していますが、当然、多くの一般的なコードがあります。理想的には、このコードは「共通の」標準.NETクラスライブラリプロジェクト(またはプロジェクト)に存在します。プラットフォーム固有のプロジェクトでこのプロジェクトを参照すると、「プロジェクト'Common'を参照できません。参照されているプロジェクトは別のフレームワークファミリ(.NETFramework)を対象としています」という警告が表示されますが、ソリューションは正常にコンパイルされます。
基本的に、共通のコードが複数のターゲットに対応している場合、ファイルリンクアプローチを使用する必要があるかどうかを尋ねています。より詳細には、私の質問は次のとおりです。
- 上記のアプローチは、私の「一般的な」プロジェクトがMono *ターゲットでサポートされているアセンブリのみを参照している場合に有効ですか?
- 上記の答えが「はい」の場合:「共通の」プロジェクトでサードパーティの.NETライブラリ(プロジェクトではなくDLLの形式)を参照しているとしましょう。このライブラリには、ターゲットごとに異なるアセンブリがあります(ただし、 Mono *でサポートされていないアセンブリを参照していませんが、Windowsバージョンのアセンブリを参照してそれを回避できますか?