コード例 #1
0
        private static async Task LoadAccountEx()
        {
            Proxies.DCEMVDemoServerClient client = SessionSingleton.GenDCEMVServerApiClient();
            using (SessionSingleton.HttpClient)
            {
                Proxies.Account accountJson = await client.AccountGetAsync();

                Account account = Account.FromJsonString(accountJson.ToJson());
                SessionSingleton.Account = account;
            }
        }
コード例 #2
0
        public async Task <AccountResult> GetAccount(Guid id)
        {
            using (IDbConnection db = new SqlConnection(connectionString))
            {
                string          accountSQL = @"SELECT * FROM Account WHERE Id = @Id";
                Proxies.Account account    = await db
                                             .QueryFirstOrDefaultAsync <Proxies.Account>(accountSQL, new { id });

                if (account == null)
                {
                    return(null);
                }

                var transactions = new List <Transaction>();

                string accountTransactionsOrdered =
                    @"SELECT * FROM [Transaction]
                      WHERE AccountId = @Id 
                      ORDER BY TransactionDate";

                using (var reader = db.ExecuteReader(accountTransactionsOrdered, new { id }))
                {
                    var debitParser  = reader.GetRowParser <Debit>();
                    var creditParser = reader.GetRowParser <Credit>();

                    while (reader.Read())
                    {
                        Transaction transaction = null;

                        switch ((int)reader["TransactionType"])
                        {
                        case 0:
                            transaction = debitParser(reader);
                            break;

                        case 1:
                            transaction = creditParser(reader);
                            break;
                        }

                        transactions.Add(transaction);
                    }
                }

                account.SetTransactions(transactions);
                AccountResult accountResult = this.resultConverter.Map <AccountResult>(account);

                return(accountResult);
            }
        }
コード例 #3
0
        private async Task <Account> CallGetTransactionsWebService()
        {
            try
            {
                Proxies.DCEMVDemoServerClient client = SessionSingleton.GenDCEMVServerApiClient();
                using (SessionSingleton.HttpClient)
                {
                    Proxies.Account ret = await client.TransactionsGetAsync();

                    return(Account.FromJsonString(ret.ToJson()));
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }