クライアントの 1 つのビジネス ロジックを保持するカスタム フレームワーク アセンブリを開発しています。このアセンブリは、WinForms から ASP.Net など、ほぼどこでも参照されます。
数週間前、(PostSharp と IPWorks の後に) Newtonsoft.Json を追加して、クラスのシリアル化された出力を取得することにしました。魅力のように機能します。
私が現在直面している問題は、フレームワークを参照するプロジェクトに Newtonsoft.Json アセンブリを自動的にコピーできないことです。フレームワークのコンパイル中に、PostSharp と IPWorks の両方が、フレームワーク (参照として) を使用するアプリケーションの bin フォルダーに正しくコピーされますが、Newtonsoft.Json アセンブリはコピーされます。コピーを取得する方法が見つかりません。
私はこれが簡単でなければならないことを知っていますが、それを実現する方法を見つけていません。私はハイとローを検索しました(「Googleで検索する方法を知っています!」)が、zilch(VS2012プロジェクトファイル形式、MSBuildドキュメントなど)を思いつきました。
詳細に:
MyFramework.dll
- nsoftware.IPWorks.dll
- PostSharp.dll
- Newtonsoft.Json
コンパイル時...問題なし
MyApplication.exe
- MyFramework.dll
- nsoftware.IPWorks (自動的に含まれる)
- PostSharp (自動的に含まれる)
- Newtonsoft.Json (常に MISSING )
これにより、明らかに、dll を手動でコピーする必要があることを忘れてしまいます。
MyFramework.dll に、IPWorks と PostSharp だけでなく Newtonsoft.Json も付随していることを MyApplication.exe に手動で追加することなく伝える方法が必要です。