2

.NET 4.0クライアントプロファイルをターゲットにしたアプリケーションを展開したいと思います。これは、ほとんどのWindows7PCに展開されていると思うからです。使用するコンポーネントの中には.NET4.0を必要とするものがあるため、.NET 3.5を使用することはできません。また、可能であれば、完全な.NETFrameworkをインストールするように強制したくありません。

ただし、コードベースの一部には4.0クライアントプロファイルにないSystem.webが必要なため、4.0クライアントプロファイルアセンブリと一緒に3.5を対象としたアセンブリをパッケージ化したいと思います。繰り返しますが、唯一の目的は、ユーザーのPCにデフォルトでインストールされていないため、ユーザーが完全な.Net4.0フレームワークをインストールする必要がないようにすることです。

ただし、アプリをビルドしようとすると、次のようなリンケージエラーが発生します。タイプまたは名前空間名'XXXX'が見つかりませんでした(usingディレクティブまたはアセンブリ参照がありませんか?)C:.... \ WpfMixedAssemblies \ WpfMixedAssemblies \ MainWindow.xaml.cs

(両方のアセンブリが同じランタイムをターゲットにしている場合は、当然その問題はありません)

「回避策」をいただければ幸いです。たとえば、別のランタイムを対象とするアセンブリを親プロセスに動的にロードすることは可能ですか?

4

1 に答える 1

0

使用している System.Web の機能については言及していませんが、一部のユーティリティ クラス (HttpUtility が思い浮かびます) のみを使用している場合は、Mono プロジェクトのソース コードを確認することを検討してください。 (http://mono-project.com)。クライアント プロファイル アセンブリの 1 つで必要なクラスにソース コードを含めることができる場合があります。コードのライセンスは非常に寛大な MIT ライセンスであり、この種の使用が許可されています (ただし、コードのいずれかを強化する場合は、プロジェクトに貢献することをお勧めします)。

于 2011-12-01T07:45:29.397 に答える