我的代码:
public void FillMaxBankCode()
{
try
{
DataSet ds = new DataSet();
ds = bol.SelectMaxBankCode();
string j = ds.Tables[0].Rows[0].ToString();
txtbankid.Text = int.Parse(j); //ERROR HERE
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
public DataSet SelectMaxBankCode()
{
try
{
**Squery = "EXEC SelectMaxBankCode";**
return dal.DBread(Squery);
}
catch (Exception ex)
{
throw ex;
}
}
我是C#的新手,上面的代码显示错误..有人可以帮忙吗?
答案 0 :(得分:5)
txtbankid.Text
属性类型是一个字符串。不要使用int.parse
。没有必要。只需:txtbankid.Text = j;
答案 1 :(得分:0)
public void FillMaxBankCode()
{
try
{
DataSet ds = new DataSet();
ds = bol.SelectMaxBankCode();
string j = ds.Tables[0].Rows[0].ToString();
txtbankid.Text = j;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
答案 2 :(得分:0)
int.Parse(..)
用于将包含数字的字符串转换为整数。您正尝试对字符串执行函数int.Parse(..)
,然后将其分配给另一个字符串。这不起作用,因为int.Parse(..)
返回整数。请在此处阅读Int32.Parse (String) method。
答案 3 :(得分:0)
如果你想在分配之前确保该值是整数,我建议你使用TryParse
// check if the table and row exists
if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
{
string j = ds.Tables[0].Rows[0].ToString();
int value = 0;
if (int.TryParse(j, out value))
txtbankid.Text = value.ToString();
}