繁体   English   中英

标签转换返回错误“输入字符串的格式不正确。 ”

[英]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");

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

输入字符串的格式不正确。

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

谢谢

Parse 将返回该值。 如果没有找到精确匹配,Parse 将抛出异常。

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

你可以做这样的事情,

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM