如何在asp.net中处理唯一标识符参数

时间:2012-05-02 03:06:10

标签: asp.net

我需要根据它的唯一标识符id从gridview和数据库中删除一行。 在我下面的代码中,我收到错误信息“无法识别的Guid格式”。有什么帮助解决它?

         protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {

       string id = GridView1.Rows[e.RowIndex].Cells[0].Text;

        SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
        SqlCommand command = new SqlCommand("Delete", conn);
        command.CommandType = CommandType.StoredProcedure;

        command.Parameters.Add("@ID", SqlDbType.UniqueIdentifier);
         command.Parameters["@ID"].Value = new System.Guid(id); 
        command.Connection.Open();
        command.ExecuteNonQuery();

        DataSet ds = new DataSet();
        SqlDataAdapter da = new SqlDataAdapter(command);
        da.Fill(ds);

        GridView1.DataSource = ds;
        GridView1.DataBind();
        command.Connection.Close();

    }

2 个答案:

答案 0 :(得分:0)

在你的id字符串上使用Guid.TryParse,然后你就会知道发生了什么。

答案 1 :(得分:0)

试试这个:

Guid theGuid = new Guid();
System.Data.SqlTypes.SqlGuid.Parse(theGuid.ToString());

Adding a Guid Parameter into SqlCommand