2013-11-23 185 views
0

我做工作,我堅持在這裏:錯誤信息

我的代碼是:

public void AddTransaction(ITransaction transaction) 
    { 

      if (((transaction is WithdrawalTransaction) || transaction is FundsTransferTransaction) && GetBalance() < transaction.Amount) 
      { 
       throw new DebitException(transaction.Amount); 
      } 
      else if ((transaction is WithdrawalTransaction) && (transaction.Amount < -350)) 
      { 
       throw new DebitException(transaction.Amount); 

      } 
      else 
      { 
       transactions.Add(transaction.TransactionID, transaction); 

      } 

    } 

,我應該給它一個錯誤框,如果交易超過350應該出現一個錯誤信息。

請幫忙

+0

當最小余額小於350時,您想拋出異常嗎? –

+0

@ user3024043例外情況應理想情況下是例外(例如內存不足)。它們非常昂貴。你也正在和所有這些if語句一起坐在Timebomb上。你有沒有看到一個狀態機之前http://www.dreamincode.net/forums/topic/225251-implementing-state-pattern-problem/ – Sico

+1

@Sico那天異常將是任何應用程序的真正瓶頸,打電話給我,我想看看這個。除非你在C64上,否則這應該不重要。 –

回答

0

不確定這是你要做的嗎?

if (transaction.Amount > 350 
{ 
throw new ApplicationException("My Error message"); 
} 

OR

if (transaction.Amount > 350) 
{ 
MessageBox.Show("It is more than 350"); 
} 

這不是你應該怎麼idealy處理這種情況。

+0

@Sudhakar我正在製作一個項目,所以當我想提取任何金額超過-350我應該得到一個錯誤,它不應該執行。 – user3024043