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 プロファイル専用のアセンブリへの参照を全て削除してください。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.