Ejemplo n.º 1
0
        public Task <int> SaveChargeAsync(Charge charge)
        {
            TaskCompletionSource <int> tcs = new TaskCompletionSource <int>();

            WcfExpenseService.ExpenseServiceClient client = this.CreateExpenseServiceClient();

            client.SaveChargeCompleted +=
                (_, e) =>
            {
                if (this.VerifyResult(e, tcs))
                {
                    charge.ChargeId = e.Result;
                    tcs.TrySetResult(e.Result);
                }
            };
            client.SaveChargeAsync(WcfExpenseService.Charge.FromModelCharge(charge));

            return(tcs.Task);
        }