异常详细信息: System.FormatException: 输入字符串的格式不正确。请教大神!!

qq_28002341 2015-07-27 09:48:04
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using System.Web.Security;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;



public partial class Main : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
protected void btnSubmit_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = @"server=DNT-20150711VEJ;uid=sa;pwd=root;database=Information";
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;

cmd.CommandText = "insert into Info(姓名,性别,曾用名,出生日期,外文名,籍贯,政治面貌,现从事专业,人才类型,专业技术服务,民族,最高学历,最高学位,国籍,职业,职业资格等级,外语语种,最高学历毕业院校,证件类型,证件号码,证件扫描件,工作单位,单位职务,兼职单位,兼职职务,通讯地址,邮政编码,办公电话,电子邮箱,移动电话) values(@姓名,@性别,@曾用名,@出生日期,@外文名,@籍贯,@政治面貌,@现从事专业,@人才类型,@专业技术服务,@民族,@最高学历,@最高学位,@国籍,@职业,@职业资格等级,@外语语种,@最高学历毕业院校,@证件类型,@证件号码,@证件扫描件,@工作单位,@单位职务,@兼职单位,@兼职职务,@通讯地址,@邮政编码,@办公电话,@电子邮箱,@移动电话)";
SqlParameter pa = new SqlParameter("@姓名", SqlDbType.VarChar, 50);
pa.Value=tbName.Text;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@性别",SqlDbType.VarChar,50);
pa.Value=rblSex.SelectedValue;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@曾用名", SqlDbType.VarChar, 50);
pa.Value = tbUsedname.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@外文名", SqlDbType.VarChar, 50);
pa.Value = tbForeignname.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@籍贯", SqlDbType.VarChar, 50);
pa.Value = tbHome.Text;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@政治面貌",SqlDbType.VarChar,50);
pa.Value=ddlZzmm.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@现从事专业",SqlDbType.VarChar,50);
pa.Value=ddlWorktype.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@人才类型",SqlDbType.VarChar,50);
pa.Value=ddlRclx.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@专业技术服务",SqlDbType.VarChar,50);
pa.Value=ddlZyjsfw.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@民族",SqlDbType.VarChar,50);
pa.Value=ddlMz.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@最高学历",SqlDbType.VarChar,50);
pa.Value=ddlZgxl.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@最高学位",SqlDbType.VarChar,50);
pa.Value=ddlZgxw.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@国籍",SqlDbType.VarChar,50);
pa.Value=ddlGj.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@职业",SqlDbType.VarChar,50);
pa.Value=ddlWork.SelectedValue;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@职业资格等级",SqlDbType.VarChar,50);
pa.Value=ddlZyzgdg.SelectedValue;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@外语语种", SqlDbType.VarChar, 50);
pa.Value = ddlLanguage.SelectedValue;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@最高学历毕业院校", SqlDbType.VarChar, 50);
pa.Value = tbSchool.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@证件类型", SqlDbType.VarChar, 50);
pa.Value = ddlCardtype.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@证件号码", SqlDbType.Int);
pa.Value = tbCardnum.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@证件扫描", SqlDbType.VarChar, 50);
pa.Value = TextBox1.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@工作单位", SqlDbType.VarChar, 50);
pa.Value = tbWorkadr.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@单位职务", SqlDbType.VarChar, 50);
pa.Value = tbWork.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@兼职单位", SqlDbType.VarChar, 50);
pa.Value = tbPtworkadr.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@兼职职务", SqlDbType.VarChar, 50);
pa.Value=tbPtwork.Text;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@通讯地址",SqlDbType.VarChar,50);
pa.Value=tbAdress.Text;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@邮政编码",SqlDbType.VarChar,50);
pa.Value=tbPostcode.Text;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@办公室电话",SqlDbType.Int);
pa.Value = tbOfficenum.Text;
cmd.Parameters.Add(pa);
pa=new SqlParameter("@电子邮箱",SqlDbType.VarChar,50);
pa.Value = tbEmail.Text;
cmd.Parameters.Add(pa);
pa = new SqlParameter("@移动电话", SqlDbType.Int);
pa.Value = tbMobilnum.Text;
cmd.Parameters.Add(pa);




int i = cmd.ExecuteNonQuery();
if (i ==-1)
{
Response.Write("<script language='javascript'>alert('数据添加失败');</script>");
}
else
{
Response.Write("<script language='javascript'>alert('数据添加成功');</script>");
}
conn.Close();
conn.Dispose();

}
}

输入字符串的格式不正确。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.FormatException: 输入字符串的格式不正确。

源错误:


行 120:
行 121:
行 122: int i = cmd.ExecuteNonQuery();
行 123: if (i ==-1)
行 124: {
...全文
194 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
编程有钱人了 2015-07-28
  • 打赏
  • 举报
回复
引用 1 楼 starfd 的回复:
一排中文参数,亮瞎眼啊 下面这些地方用int.Parse转换下后试下
pa = new SqlParameter("@移动电话", SqlDbType.Int);
 pa.Value = tbMobilnum.Text;
这个地方真正错误的原因是输入不是数字 或者是空,如果输入的是数字 不用强制转换
  • 打赏
  • 举报
回复
一排中文参数,亮瞎眼啊 下面这些地方用int.Parse转换下后试下
pa = new SqlParameter("@移动电话", SqlDbType.Int);
 pa.Value = tbMobilnum.Text;

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧