【发布时间】:2017-04-23 06:46:19
【问题描述】:
我需要创建 Web 表单应用程序,从 SOAP 服务返回的数据集中将数据插入到 sql server 2014 数据库表中。我使用下一个代码:
DataSet ds;
string conStr = ConfigurationManager.ConnectionStrings["myDb"].ConnectionString;
SqlConnection conn = new SqlConnection(conStr);
SqlDataAdapter adapter = new SqlDataAdapter("select * from catalog", conn);
SqlCommand insertCommand = new SqlCommand();
insertCommand.CommandText = "insert into catalog(artId, ardDesc) values(@aid, @desc)";
insertCommand.Connection = conn;
insertCommand.Parameters.Add("@aid", SqlDbType.Int);
insertCommand.Parameters.Add("@desc", SqlDbType.NVarChar);
adapter.InsertCommand = insertCommand;
servProxy.prodService author = new servProxy.prodService();
System.Security.Cryptography.X509Certificates.X509Certificate cert = new System.Security.Cryptography.X509Certificates.X509Certificate(@"D:\locCert\certName.p12", "1234");
if (cert != null)
{
author.ClientCertificates.Add(cert);
try
{
ds = author.GetProdList();
conn.Open();
cmdBuilder = new SqlCommandBuilder(adapter);
adapter.Update(ds.Tables[0]);
}
catch (Exception ex)
{
// handle error
}
finally
{
conn.Close();
}
}
else
{
// handle ...
}
当我运行代码时,什么都没有发生,我在某个地方犯了错误,但不知道在哪里。当插入断点可以看到数据集表已成功填充但插入数据库没有成功。 我可以只将数据插入两列,db 表中有 15 列,因此数据集中有 15 列吗?数据集和数据库表中的列名相同。
【问题讨论】:
标签: .net sql-server dataset