0

我有一个通过下拉列表中的选定项目填充的网格视图,我对此没有任何问题。我的问题是我试图将我的 gridview 上的多行保存到我的数据库中,例如我在我的 gridview 上添加了 3 个项目,如下所示:

Id  | Name
111 | Jack
222 | Nicole
333 | John

现在,我希望在单击“保存”按钮后将 ID 列 111、222 和 333 下的所有内容保存在我的数据库中包含“值”的定义,并且没有扩展方法“值”接受类型的第一个参数......”:

SqlConnection con = new SqlConnection("Data Source=GATE-PC\\SQLEXPRESS;Initial Catalog=dbProfile;Integrated Security=True");
    SqlCommand cmdd = new SqlCommand("Insert into profile (Id, profile_id)VALUES(@id, @profile_id", con);

    foreach (GridViewRow row in GridView1.Rows)
    {

        cmdd.Parameters.Add("@id", SqlDbType.Char, 20, "Id").Values = row.Cells["Id"].Value;
    }

    cmdd.CommandType = System.Data.CommandType.Text;

    cmdd.Parameters.AddWithValue("@profile_id", txtID.Text);
    con.Open();
    cmdd.ExecuteNonQuery();

一旦我能够将gridview中的多行保存到我的数据库中,我的表应该如下所示:

auto_id | Id | profile_id
1       |111 | 101
2       |222 | 101
3       |333 | 101

我错过了什么?我正在使用带有 C# 的 asp.net。

4

1 回答 1

1

你得到的错误,你正在使用,Values但实际上它是Value. 所以试试这个

foreach (GridViewRow row in GridView1.Rows)
{
   cmdd.Parameters.Add("@id", SqlDbType.Char, 20, "Id").Value = row.Cells[0].Value;
}
于 2013-06-01T14:35:52.253 回答