簡體   English   中英

為十進制值分配字符串值

[英]Assign string value for decimal value

_item = new OutTYonetimOzet();

_item.Banka = Convert.ToDecimal(" "); 

liste.Add(_item);

有一個名為liste的列表。 在列表項中, Banka命名元素是十進制值。 我想在屏幕上顯示空字符串時顯示空字符串。 但是這段代碼得到了一個無法投射的錯誤。 問題是什么。

錯誤信息是:

輸入字符串的格式不正確。

沒有“空白小數”這樣的東西。 decimal不能具有“空白”值 - 它始終具有數值。 Convert.ToDecimal(" ")是荒謬的 - 沒有什么可以返回它是有道理的。

您可以嘗試使用Nullable<decimal> (也就是decimal? );

public decimal? Banka {get;set;}

_item.Banka = null;

您也可以使用decimal.TryParse而不是Convert 使用此技術,您可以檢查字符串是否有效。

        _item = new OutTYonetimOzet();

        decimal val = decimal.MinValue;

        if (decimal.TryParse(" ", out val))
        {
            _item.Banka = val;
        }
        else
        {
            //your default goes here
            _item.Banka = 0;
        }

        liste.Add(_item);

並且Mark建議我使用Nullable<decimal>並使用null作為默認值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM