[英]How to handle exception in empty return data with IEnumerable<decimal> C#
[英]Return empty string in decimal function in c#
我創建了一個比較商品價格的函數。 這是我的功能:
public static decimal ComparePrice(decimal Price, decimal WebsitePrice)
{
decimal ZERO_PRICE = 0.00000M;
if(Price == ZERO_PRICE && WebsitePrice > ZERO_PRICE){
return WebsitePrice;
}else if(Price == ZERO_PRICE && WebsitePrice == ZERO_PRICE){
return "";
}else{
return Price;
}
}
如果both(price和websiteprice)都等於0.00,則它將返回空字符串,我知道當函數設置為十進制類型時不可能返回該字符串,但是我不知道該怎么辦。 有人可以幫忙嗎? 謝謝。
如果在您的應用程序邏輯中有意義,則可以使用Nullable類型,並使用null代替空字符串。 喜歡 :
public static decimal? ComparePrice(decimal Price, decimal WebsitePrice)
{
if(Price == decimal.Zero && WebsitePrice > decimal.Zero){
return WebsitePrice;
}else if(Price == decimal.Zero && WebsitePrice == decimal.Zero){
return null;
}else{
return Price;
}
}
或按建議使用Decimal.MinValue作為無效標志。 (我再次更喜歡null,即使這實際上是您邏輯中的有效值)。
為什么不返回簡單的0.0當然,當兩個值都為0.0時,返回0.0是有意義的。
您總是可以返回諸如decimal.MinValue之類的內容,這表明它們都是零價格商品。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.