输入字符串的格式不正确。C#
当预算显示值小于“提交”按钮将隐藏的成本显示金额时,我正在进行验证。但我得到一个错误“输入字符串的格式不正确。” 下面是我的代码输入字符串的格式不正确。C#,c#,asp.net,validation,C#,Asp.net,Validation,当预算显示值小于“提交”按钮将隐藏的成本显示金额时,我正在进行验证。但我得到一个错误“输入字符串的格式不正确。” 下面是我的代码 我用以下方法解决了这个问题: if (Decimal.Parse(txtBudget.Text) >= Decimal.Parse(txtCost.Text)) { btnSubmit.Visible = true; } else { btnSubmit.Visible = false; } 然后声明一个var十进制类似于: Decimal
我用以下方法解决了这个问题:
if (Decimal.Parse(txtBudget.Text) >= Decimal.Parse(txtCost.Text))
{
btnSubmit.Visible = true;
}
else
{
btnSubmit.Visible = false;
}
然后声明一个var十进制类似于:
Decimal budget;
Decimal cost;
if (!Decimal.TryParse(txtBudget.Text, out budget)) {
btnSubmit.Visible = false;
//TODO: probably you have to show message that txtBudget has incorrect value
}
else if (!Decimal.TryParse(txtCost.Text, out cost)) {
btnSubmit.Visible = false;
//TODO: probably you have to show message that txtCost has incorrect value
}
else {
//TODO: you may find useful to check if cost < 0 or/and budget < 0 etc.
btnSubmit.Visible = budget >= cost;
}
十进制预算;
十进制成本;
如果(!Decimal.TryParse(txtbudent.Text,out-budget)){
btnSubmit.Visible=false;
//TODO:可能您必须向消息显示TXTBudent的值不正确
}
否则如果(!Decimal.TryParse(txtCost.Text,out cost)){
btnSubmit.Visible=false;
//TODO:可能您必须向消息显示txtCost的值不正确
}
否则{
//TODO:您可能会发现检查成本是否<0或/和预算是否<0等很有用。
btnSubmit.Visible=预算>=成本;
}
您的问题将出现在DateTime
转换中,因为如果
blank
或Null
值,则它将给出上述错误,因此
按照下面提供的代码示例执行所有代码
已使用datetime
在哪一行,它的给定错误?这个
txtbudent.Text
有哪个值?还有txtCost.Text
,卢克!最可能的问题是这里的DateTime datestart=DateTime.Parse(dr[“datestart”].ToString())代码>。您的日期是否存储为字符串?如果是,为什么?它们应存储为日期值。空日期是作为空字符串返回还是为空?如果问题不在这里,则可能是在某个日期格式字符串中。你没有提供足够的信息。您应该能够告诉哪一行受到行号的影响,或者设置断点并调试、观察值。如果用户在txtbrudge
字段中输入“bla-bla-bla”怎么办?同意Dmitry。。。您需要验证这些条目。。。但同时…btnSubmit.Visible=Decimal.Parse(txtbudent.Text)>=Decimal.Parse(txtCost.Text)
Decimal budget;
Decimal cost;
if (!Decimal.TryParse(txtBudget.Text, out budget)) {
btnSubmit.Visible = false;
//TODO: probably you have to show message that txtBudget has incorrect value
}
else if (!Decimal.TryParse(txtCost.Text, out cost)) {
btnSubmit.Visible = false;
//TODO: probably you have to show message that txtCost has incorrect value
}
else {
//TODO: you may find useful to check if cost < 0 or/and budget < 0 etc.
btnSubmit.Visible = budget >= cost;
}
if(dr["DateStarted"].ToString() != "")
{
txtDateStarted.Text = Convert.ToDateTime(dr["DateStarted"]).ToString("MMMM dd, yyyy");
}