标签转换 returns 错误 "input string was not in a correct format. "

Label conversion returns error "input string was not in a correct format. "

我有一些这样的代码:

decimal dBaseSal = decimal.Parse(dataBoundItemt.FindControl("lblTotalComp1") is Label ? (dataBoundItemt.FindControl("lblTotalComp1") as Label).Text : "0");

标签的值为“”。因为此刻里面什么都没有。我收到错误

input string was not in a correct format.

我如何像现在使用标签一样进行验证,以确保它是在标签中创建的,而且,如果它确实以“”形式出现,则该值仅在那个条件。它需要是小数格式,因为有时会有小数的值。

谢谢

解析将 return 值。 如果找不到完全匹配,Parse 将抛出异常。

TryParse 将 return 布尔值并输出值。 TryParse 将尝试解析和转换,如果没有找到完全匹配它将 return false 否则它将 return true。如果未找到完全匹配,则类型的默认值为 returned。

你可以这样做,

decimal.TryParse(dataBoundItemt.FindControl("lblTotalComp1") is Label ? (dataBoundItemt.FindControl("lblTotalComp1") as Label).Text : "0", out decimal dBaseSal);