Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 更新命令在gridview中不起作用_Asp.net - Fatal编程技术网

Asp.net 更新命令在gridview中不起作用

Asp.net 更新命令在gridview中不起作用,asp.net,Asp.net,更新命令的我的代码: public void update(name,email,phone) { using {sqlconnection con=new sqlconnection("some connection source")) { con.open(); string str = "UPDATE register SET name = @name,email = @email WHERE phone = "@phone";

更新命令的我的代码:

public void update(name,email,phone)
{
    using {sqlconnection con=new sqlconnection("some connection source"))
    {
        con.open();
        string str = "UPDATE register SET name = @name,email = @email WHERE phone = "@phone";

        using(sqlcommand cmd=new sqlcommand(str,con))
        {
            cmd.commandtype=commandtype.text;
            cmd.parameters.addwithvalue("@name",name);
            cmd.parameters.addwithvalue("@email",email);
            cmd.parameters.addwithvalue("@phone",phone);
            cmd.executenonquery();
        }
    }
}
我的行更新事件如下:

string name = ((TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text;
string email = ((TextBox)GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text;
int phone = Convert.ToInt32(GridView1.Rows[e.RowIndex].Cells[3].Text);

update(name, email, phone);
GridView1.EditIndex = -1;
bindgridview();

在我的桌上,手机是主键,当我按下更新按钮时,它不会启动,也不会改变。有人能看到我的代码并告诉我哪里做错了吗?

你的更新语句中缺少简单的
引号(“”),使用后不必要的
{
,并确保你的连接也关闭了

没有关闭引号(“”)在更新语句和关闭连接的位置中,您的代码似乎有一些输入错误:1)使用{sqlconnection con=…
:将
{
替换为
.2)
…where phone=“@phone”
应该是
…where phone=@phone”
(不需要的引号)。您在网格上订阅的是什么事件?尝试订阅“更新”事件而不是“更新”您的代码示例将引发编译器错误-请检查已经提到的问题,尝试逐步调试事件处理程序和更新方法,并告诉我们您得到了什么。@GlennFerrieLive:rowupdated事件不起作用,我认为e没有缺少引号-这是多余的。@Filburt:它只有2个电话,没有错误,什么都没有。但它没有更新。@user1157685如果一切正常,请在web.config中检查连接字符串。