0

アイテムを選択するリストがあります。この項目のいくつかのフィールドに基づいて、別のコントロールの選択リストをフィルター処理したいと考えています。

そのようなもの:

Select * from choiceItems Where choiceItem.ID = (Select ID from anotherTable where anotherTable.ID = selectedItem.ID)

問題は、より多くの ID が返される可能性があることです。たぶん、ID = {3,2,1} などのすべての ChoiceItems が必要です。

私のパラメーターはリストで選択された項目に依存しているため、サーバーでクエリを前処理できません。クエリ エディターで結果をフィルター処理しようとすると、単一の値 (fe ID=2) のみを指定できるパラメーターのみを指定できます。

シルバーライトでそれを行うにはどうすればよいですか?

また、別の無関係な小さな問題: ライトスイッチにカスタム コントロールをロードしているときに待機中のカーソルを表示することは可能ですか (現在、データとコントロールがロードされるまで灰色の領域が表示されるだけです)。

4

3 に答える 3

0

正確な構文はありませんが、次のようにする必要があります。

最初にLINQを使用してIDを取得します

var FilterOnThisId=this.Query1.Where(x=>x.ID==selectedItem.ID).FirstOrDefault();

次に、必要なコレクションをクエリします

var filtedItems=this.Query2.Where(x=>x.ID==FilterOnThisId);
于 2014-06-17T20:05:35.613 に答える
0

クエリのパラメーターがリストから選択されている場合でも、クエリを前処理できるはずです。次に、LINQ を使用して のサブセットを返すchoiceItemsか、選択したパラメーターに基づいて、すべてのchoiceItems.

SOの質問への回答で、これを行う詳細な例を示します。

ドロップダウンに基づいて Lightswitch で検索画面を作成する方法はありますか

于 2012-08-23T15:32:46.703 に答える
0

Select * from choiceItems Where choiceItem.ID = (anotherTable.ID = selectedItem.ID の anotherTable から ID を選択)

これは多対多のシナリオです。クエリ パラメーターを使用して WCF RIA サービスを作成する必要があり、フィルタリングのためだけに多くの作業が必要です。別の方法は、それらのテーブルを関連付けることです。

于 2012-08-22T14:23:32.213 に答える