if...else 条件に従うための最適化されたロジックを持っている人はいますか.....
シナリオ
- DateFrom、DateUntil、および NewDateUntil の 3 つの日付パラメーターがあります。
If DateFrom <= DateNewUntil And DateUntil > NewDateUntil then
警告メッセージを追加して true を返すIf DateFrom > DateNewUntil And DateUntil > DateNewUntil then
警告メッセージを追加して false を返すIf DateUntil < DateNewUntil
それではちょうどreturns true
。
元のコードを以下にコメントします。いくつかの最適化を試みました。
ご覧ください。
コード
public bool ValidateDate(DateTime pDateFrom, DateTime pDateUntil, DateTime pNewDateUntil)
{
////Original Code
//if ((pDateUntil.Date > pNewDateUntil.Date))
//{
// if ((pDateFrom.Date <= pNewDateUntil.Date))
// {
// pDateUntil = pNewDateUntil;
// AddWarningMessage("Warning Message");
// return true;
// }
// else if ((pDateFrom.Date > pNewDateUntil.Date))
// {
// AddWarningMessage("Warning Message");
// return false;
// }
//}
//else
//{
// return true;
//}
//Optimized As:
bool returnValue = false;
if ((pDateUntil > pNewDateUntil.Date))
{
returnValue = pDateFrom <= pNewDateUntil.Date ? true : false;
AddWarningMessage("Warning Message");
}
else
{
returnValue = true;
}
return returnValue;
}