asp中GridView的选择为啥被调用了两次

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp中GridView的选择为啥被调用了两次相关的知识,希望对你有一定的参考价值。

我在这个方法里写了插入数据库,我按选择一次却插入两条相同的,为什么,怎么处理
public void caidan_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)

string mname = caidan.Rows[e.NewSelectedIndex].Cells[1].Text.Trim();
string mno = caidan.Rows[e.NewSelectedIndex].Cells[0].Text.Trim();
string cmdtext1 = "insert into diancai(Gno,Mno,Mname) values('" + gnos1 + "','" + mno + "','" + mname + "')";
DB.ExSql(cmdtext1);

public static bool ExSql(string str)//获取sql语句 然后链接数据库 对数据库操作 这个事在DB类中

SqlConnection conn = DB.GetCon();
SqlCommand com = new SqlCommand(str, conn);
com.ExecuteNonQuery();
return true;
conn.Close();

参考技术A 这样的J8事儿一般很烦。
实在没办法就是慢慢排查。
新建一个asp页面,单独放一个girdview,以及你贴的这2个方法,执行起来应该没有错误,然后慢慢添加其他代码,然后问题出现了,你就知道是哪块代码的问题了

为啥我的方法在 iPhone/iPod 上被调用了两次,但在 iPad 上却没有?

【中文标题】为啥我的方法在 iPhone/iPod 上被调用了两次,但在 iPad 上却没有?【英文标题】:Why is my method being called twice on iPhone/iPod but not on iPad?为什么我的方法在 iPhone/iPod 上被调用了两次,但在 iPad 上却没有? 【发布时间】:2012-02-23 16:02:05 【问题描述】:

在我的一个视图控制器中,单击按钮后会调用以下函数,以便我可以进行一些初始化并弹出当前视图(ResultViewController)并显示上一个视图(GameViewController)。

- (IBAction)PlayNextList:(id)sender 
    NSInteger index = [[[GameStore defaultStore] allLists] indexOfObjectIdenticalTo:[[GameStore defaultStore] selectedList] ];

    if(index == [[[GameStore defaultStore] allLists] count]-1)
    
        index = 0;
    
    index++;
    [[GameStore defaultStore] setSelectedList:[[[GameStore defaultStore] allLists] objectAtIndex:index]];
    [[GameStore defaultStore] resetGame]; 

    [[GameStore defaultStore] createResult];
    NSLog(@"Press Next List");
    NSLog(@"%@",[[[[GameStore defaultStore] allLists] objectAtIndex:index] label]);
    [[self navigationController] popViewControllerAnimated:YES];


在 iPhone/iPod 上,我注意到 [[GameStore defaultStore] createResult]; 被调用了两次,但在 iPad 上只被调用了一次。

在试图弄清楚为什么它被调用两次后,我发现第二次调用发生在GameViewControllerviewWillAppearviewDidAppear 之间。

知道为什么会这样吗?

【问题讨论】:

在函数中设置断点,当它被命中时,查看回溯。这将为您提供有关两次/一次调用它的反馈。 您是否在此处设置了断点并查看了每个调用的堆栈跟踪? @BP 你能发表你的评论作为答案吗?你是对的。我复制并粘贴另一个按钮来创建按钮,它包括与另一个名为 createResult 的函数的连接,我忘记删除连接。谢谢你!!!昨晚我花了几个小时试图弄清楚这一点。 好的,我将评论作为答案发布并删除了评论。这种情况我也遇到过好几次了,追查起来会很抓狂。很高兴我能帮上忙。 【参考方案1】:

确保检查连接检查器是否有触发激活 PlayNextList 的事件,特别是如果您有用于 iPhone 和 iPad 的不同 NIB 文件,并确保该事件没有两次连接到相同的方法。

【讨论】:

以上是关于asp中GridView的选择为啥被调用了两次的主要内容,如果未能解决你的问题,请参考以下文章

为啥在 Swift 中 CollectionView 函数被调用了两次?

为啥我的方法在 iPhone/iPod 上被调用了两次,但在 iPad 上却没有?

didUpdateToLocation 调用了两次,好的。为啥 oldLocation 两次都为零?

为啥我的 UIViewController 被加载了两次? IOS 7

为啥 ngOnInit 被调用两次?

为啥 sys.stdout.write 被调用两次?