3

アプリケーション間で共有するいくつかの C# クラス ライブラリがあります。Windows 8 スタイル アプリを作成したいのですが、Windows 8 クラス ライブラリまたはポータブル クラス ライブラリしかサポートしていません。後者を使用することを決定し、非同期操作を除いて、それほど困難なくすべてを移植しました。

現在、私のクラス ライブラリはイベント ベースの非同期パターンを実装しています。

System.Componenent.AsyncOperation/AsyncOperationManagerこの例から、ポータブル ライブラリはandをサポートしていないようですSystem.Collections.Specialized.HybridDictionary

私の2つの質問は次のとおりです。

1) の代わりに使用するのに適したコレクションは何HybridDictionaryですか?

2) 不足を回避するにはどうすればよいAsyncOperation/AsyncOperationManagerですか? まったく別のパターンを実装する必要がありますか?

更新: VS 2012 では、私のポータブル クラス ライブラリは「.net Framework 4 以降」、「Silverlight 4 以降」、「windows phone 7 以降」、「メトロ スタイル アプリ用の .net」をターゲットにしています。

4

1 に答える 1

1

1)HybridDictionaryで使用している要素はいくつですか?10)未満の場合は、List<T>を使用してください。それ以外の場合は、Dictionary <Key、TValue>を使用します。

2) http://pclcontrib.codeplex.com/にAsyncOperation/AsyncOperationManagerとBackgroundWorkerのポータブルバージョンがあります。バイナリはまだありませんが、Portable.ComponentModel.Asyncプロジェクトを参照してソースコードを探してください。

于 2012-08-14T07:13:03.663 に答える