Ejemplo n.º 1
0
 /// <summary>
 /// 处理 添加
 /// </summary>
 /// <param name="evnt"></param>
 /// <returns></returns>
 public Task <AsyncTaskResult> HandleAsync(BankCardAddedEvent evnt)
 {
     return(TryTransactionAsync(async(connection, transaction) =>
     {
         var effectedRows = await connection.UpdateAsync(new
         {
             Version = evnt.Version,
             EventSequence = evnt.Sequence
         }, new
         {
             Id = evnt.AggregateRootId,
             //Version = evnt.Version - 1
         }, ConfigSettings.WalletTable, transaction);
         if (effectedRows == 1)
         {
             await connection.InsertAsync(new
             {
                 Id = evnt.BankCardId,
                 BankName = evnt.Info.BankName,
                 OwnerName = evnt.Info.OwnerName,
                 Number = evnt.Info.Number,
                 WalletId = evnt.AggregateRootId,
                 CreatedOn = evnt.Timestamp
             }, ConfigSettings.BankCardTable, transaction);
         }
     }));
 }
Ejemplo n.º 2
0
 private void Handle(BankCardAddedEvent evnt)
 {
     _bankCards.Add(new BankCard(evnt.BankCardId, evnt.Info));
 }