2009-04-27 13 views
0

私はSilverlightでRIAフレームワークを作成していますので、& C#。ですから、私はSilverlightの豊富な機能(動的ロードなど)を使用する必要があります。しかし、Visual Studioがすべてのクラスライブラリ(同じ名前空間または差分名前空間)を1つのdllにマージすることがわかりました。Visual Studio 2008のC#プロジェクトから2つ以上のDLLをビルドすることはできますか?

C#プロジェクトから2つ以上のDLLをビルドする考えはありますか?私はちょうど1子ページの1プロジェクトを作成します。だから私のソリューションに100の子ページがある場合、私は意味がないこのソリューションの100以上のプロジェクトを作成します。

おかげ

答えて

2

ジャスト異なるアセンブリ(DLL)を得るためにあなたのソリューション内のプロジェクトの追加を行います。

+0

私は、1つのソリューションで100以上のプロジェクトを持っているとき、それは非常に解明したソリューションだと思います。さらに、同じ共有dllを維持するためには非常に大きなスペースが必要です。 –

+0

100以上のアセンブリを同時に編集する必要がない場合は、プロジェクトとして含めるのではなく、一部のアセンブリを参照するだけで済みます。 –

+0

私はあなたの問題を抱えていません。あなたは複数のプロジェクトを持っていますか?もしそうなったら、複数のDLLを既に取得しているはずです。 – Blindy

1

プロジェクトから複数のdllを生成することはできません。そして、数百のプロジェクトを作成するのは実用的ではありません。

なぜ、1つのDLLを作成し、それを動的にロードしないのですか?

+0

私は小さなdllをロードする必要があるので(子ページあたり<100 KB)。または、大きなDLLから小さなdllを作成する考えがありますか?私を助けてください。ありがとう。 –

+0

私が考えることができる唯一のことは、 'mygeneration'や 'codesmith'のようなものを使用してプロジェクト内のすべてのファイルに対して新しいプロジェクトを生成することです。リリースビルドを行うには、すべての小さなプロジェクトを含む別々のソリューションファイルが必要ですが、開発者は単一のプロジェクトでソリューションを使用できます。 このように言えば、実際には1つの大きなDLLをロードするだけで問題はありません。アプリドメインごとに一度だけロードされた場合、オーバーヘッドは最小限に抑えられます。 – Naren

1

1つのVSプロジェクトでは、1つのバイナリファイルをコンパイルできます。これを回避する方法はおそらくありません。

多くのプロジェクトをソリューションに含めることについてのあなたの問題は何ですか?これは悪くないです。

  • 、あなたが
  • コンパイルして仕事をしたくないプロジェクトを無効にすることができます他の誰かが別の
  • で作業しているときに、1つのDLL上で動作することができますバージョン
  • と少ない混乱を持っているが、高速であります変更されたプロジェクトは再コンパイルする必要がないため、

私はこのようなケースが1つ(ソリューションの多くのプロジェクト)でした。あなたはそれに慣れるだろう。

関連する問題