Unity がデフォルトでコンパイルしない .NET クラスライブラリ API の一部を Unity プロジェクトに使用する場合は、コンパイル中に参照する追加アセンブリのリストを C# コンパイラーに提供することが可能です。この動作は、プロジェクトが使用する .NET プロファイルによって異なります。詳細は .NET プロファイルのサポート を参照してください。
プロジェクトが .NET Standard プロファイルを使用している場合、.NET クラスライブラリ API の全ての部分がデフォルトで参照されます。追加のアセンブリは参照できません。API の一部が欠落していると思われる場合は、それは .NET Standard に含まれない可能性があります。代わりに .NET Framework プロファイルを使用してみてください。プロファイル変更時のコンパイルの問題を回避するには、プロファイルの切り替え を参照してください。
.NET Framework プロファイルを使用する場合、Unity はデフォルトで以下のアセンブリを参照します。
他のクラスライブラリアセンブリを参照するには、csc.rsp ファイルを使用します。これは、C# コンパイラーに渡せるコマンドライン引数のリストを含む応答ファイルです。csc.rsp ファイルを使用する場合は以下の手順に従ってください。
Assets
フォルダーに csc.rsp という名前のファイルを作成します。Assets
フォルダーに、(既にそのフォルダー内になければ) 参照したい全てのアセンブリファイルを移動します。例えば、プロジェクトが HttpClient
クラスを使用していて、それが System.Net.Http.dll
アセンブリで定義されている場合は、アセンブリが存在しない場合に、C# コンパイラーが以下の初期エラーメッセージを生成する可能性があります。
The type `HttpClient` is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
このエラーを解決するには、以下のコマンドライン引数を含む csc.rsp ファイルをプロジェクトに追加します。
-r:System.Net.Http.dll
参照したいアセンブリごとに、適切なコマンドライン引数を含む新しい行を追加します。
csc.rsp ファイルを使用してクラスライブラリアセンブリを参照している場合、.NET プロファイルを変更すると、コンパイルに問題が発生することがあります。
もし、.NET プロファイルを .NET Framework から .NET Standard に変更し、csc.rsp ファイルが .NET Standard プロファイルに存在しないアセンブリを参照すると、コンパイルは失敗します。この問題を解決するには、.NET プロファイルを .NET Standard に変更する前に、csc.rsp ファイルを編集して .NET Framework プロファイル専用のアセンブリへの参照を全て削除してください。