PROJ_ClientAccount Client = db.PROJ_ClientAccount.Where(x => x.Id == 1).FirstOrDefault();
PROJ__VATRateRecord VatRecord = db.PROJ_VATRateRecord.Where(x => x.Id == 2).FirstOrDefault();
PROJ__ProductRecord ProductRecord = db.PROJ_ProductRecord.Where(x => x.Id == sale.Value.ProductId).FirstOrDefault();
if (Client == null)
{
throw new Exception("Error creating new Order Record, Client Account can't be empty");
}
if (VatRecord == null)
{
throw new Exception("Error creating new Order Record, VAT can't be empty");
}
if (ProductRecord == null)
{
throw new Exception("Error creating new Order Line Record, ProductRecord can't be empty");
}
我想對此進行重構,只使用一條if語句。 如果( 「任何記錄爲空」) { 拋出新的異常(「RROR創造秩序, 」記錄「 不能爲空 }如何將語句重構爲一條語句
感謝
'如果(客戶== NULL || VatRecord == NULL || ProductRecord == NULL)'? –
你知道如何使用LINQ,但你問如何結合三個'if'語句?我覺得我失去了一些東西... –
什麼@SudhakarTillapudi建議,是你如何實現你想要的。但我的問題是,你有不同的例外,你從每個「if」塊拋出。如果它的業務需要顯示不同的消息,我認爲你應該保持'if'塊的原樣。看看你拋出的異常看起來更像是一個驗證代碼,而不是一個異常 – Nilesh