1

SL アプリで ria サービスを使用する場合、次の非同期呼び出しを発行して、エンティティ リストのグループを取得できます。

LoadOperation<Person> ch = 
this.AMSContext.Load(this.AMSContext.GetPersonQuery().Where(a => a.PersonID == this.performer.PersonID));

しかし、sum(Commission)、sum(Salary) などの計算を取得したいのですが、結果はエンティティではなく、単なるスカラー値です。これどうやってするの?

4

1 に答える 1

1

WCF メソッドで任意の値を返すメソッドを使用できます。サーバー側では、このようなものがあります

[EnableClientAccess()]
public class AMSContext : DomainService
{
   public float CalucalteCommissionSum()
   {
      // make your linq query and return the result here 
   }
}

そして、次のようにクライアントからアクセスできます。

this.AMSContext.CalucalteCommissionSum(x => context_CalucalteCommissionSumCompleted(x), null);

void context_CalucalteCommissionSumCompleted(System.Windows.Ria.InvokeOperation<float> op)
{
    // you will have the value in op.Value
}

詳細については、この質問を確認してください。

于 2009-12-13T05:54:04.763 に答える