2012-12-23 184 views
-2
public partial class addtheatre : System.Web.UI.Page 
{ 
    bal objbal = new bal(); 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      DataSet ds = objbal.getid(); 
      int s; 
      string d = "9T000"; 
      string c = ds.Tables[0].Rows[0][0].ToString(); 
      if (c == "") 
      { 
       s = 1; 
       d = "9T000" + s; 
      } 
      else 
      { 

       s = Convert.ToInt32(c); 
       s = s + 1; 
       if (s < 999) 
       { 
        d = "9T000" + s; 
       } 
       //s = Convert.ToInt32(c); 
       else if (s == 1000) 
       { 
        d = "T1000"; 
       } 
       else if (s > 1000) 
       { 
        d = "T1000" + s; 
       } 

      } 
      TextBox1.Text = d.ToString(); 
     } 
    } 
} 

转换它时显示为错误(输入字符串的格式不正确)。
在数据库中,我采取了d作为varchar输入字符串格式不正确

+2

请发布完整的堆栈跟踪。 –

回答

2

我猜的错误是从这里来的:

s = Convert.ToInt32(c); 

如果c值不是一个整数(如"123")的字符串表示你得到一个异常这里。您可以在调试器(例如Visual Studio中)中检查c的值以查看问题所在。

+0

回答相同的+1 –

0

除了和马克·拜尔斯给出..
你应该使用
int.TryParse(string)int.Parse(string)将字符串转换为int。

1

我猜的错误是从这里来的:

试试下面的代码

int.TryParse(c,out s); 

希望这会帮助你。