1

WCF を使用して Silverlight アプリケーションを作成する必要があります。

また、別のライブラリでこのサービスにアクセスするには、依存性注入を使用する必要があります。

(Silverlight 対応の WCF サービスを追加します)

問題は、依存性注入 (この場合は Prism/MEF) を使用しようとすることです。このサービスのインターフェイスを持つ Silverlight 共有ライブラリを作成すると、Silverlight ライブラリであるため、このライブラリを ASP.Net プロジェクトに追加できません。Silverlight 以外のライブラリを作成した場合、そのライブラリを他のプロジェクトに追加して共通のインターフェイスを共有することはできません。

基本的に、このサービス インジェクションを実行できるように、Silverlight のプロジェクト間で共有すると思われるライブラリが必要です。

どんな情報でも大歓迎です

4

2 に答える 2

1

認識しているかどうかにかかわらず、あなたの質問は次の質問の複製です: WCF サービスと Silverlight アプリの間の共有データ オブジェクト同じように尋ねられなくても、答えは同じです。

別のプロジェクトを作成し、あるプロジェクトから別のプロジェクトにコード ファイルを (リンクとして) 共有する必要があります。問題は、Silverlight プロジェクトが ASP.NET/WCF プロジェクトとは異なるランタイム用にコンパイルされていることです。これらは共通のライブラリを参照できないため、前述のように共有ファイルをリンクすることが、異なるランタイムをターゲットとする 2 つのプロジェクト間でコードを共有する最も簡単な方法です。

于 2011-10-01T02:03:21.587 に答える
1

スラグスターが言ったように-これは、SilverlightライブラリからWindowsライブラリファイルにリンクすることで行われます。

ここで説明されているように行います: http://www.dotnetmafia.com/blogs/dotnettipoftheday/archive/2010/01/20/linking-files-in-visual-studio.aspx

追加したかっただけです..あなたがそこに行ったので、必要なのは別のフレームワーク/テクノロジーです。通常、あなたが話しているクラスは、WindowsのみまたはSilverlightのみの世界に存在する他のクラス/名前空間に依存しています。そして、有線でオブジェクト データを転送する必要があります。

これに対する Microsoft のソリューション - RIA サービス。機能 - Windows クラスを受け取り、Silverlight 側でプロキシ クラスを生成します。必要なものの種類。また、WCF サービスで動作します。

CSLA や DevForce などのサードパーティ ソリューションがあります。私は DevForce を使用しており、多くのことを自動的に行いますが、プロキシ クラスを生成する代わりに、希望どおりのリンクを作成します。

于 2011-10-01T02:48:12.240 に答える