![](/img/trans.png)
[英]Input String was not in correct format (CONVERTING STRING TO DECIMAL)
[英]Input string was not in a correct format (Decimal to String)
我試圖將小數轉換為我過去成功完成的字符串,但是由於某種原因,它決定現在不工作。 我真的無法理解它,我已經在SQL Management Studio中將其設置為十進制,並使用linq來誘使它通過它,但是由於人類未知的某些奇怪原因,它認為要求日期時間。
碼:
protected void btnSubmit_Click(object sender, EventArgs e)
{
try
{
tblTest t = new tblTest();
t.tDecimal = Convert.ToDecimal(tbxDecimal.ToString());
t.Add(t);
}
catch (Exception ex)
{
System.Diagnostics.Debug.Write(ex.Message);
}
}
有人可以幫我嗎?
首先,您應該始終使用System.Decimal.TryParse()而不是Convert.ToDecimal()
其次,假設您使用某種形式的匈牙利符號,並且tbx在符號中表示“文本框”,那么您嘗試轉換的是文本框,而不是文本框中的文本。
代替
tbxDecimal.ToString()
你需要
tbxDecimal.Text.ToString()
最后,您是否設置了斷點以找出您要轉換的值實際上是什么? 它可能與您預期的不同。
可能是因為字符串使用點而不是逗號來代替,或者相反。
也許tbxDecimal.ToString()== string.Empty
? 如果字符串為空,則Decimal.Parse將引發異常
擴展Fredrik的答案:是否存在CultureInfo / Localization不匹配?
您為什么認為這是約會時間? 您可以發布實際的字符串嗎?
注意小數點分隔符-'。' 與“,”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.