首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >未更新中的FormView_ItemUpdating

未更新中的FormView_ItemUpdating
EN

Stack Overflow用户
提问于 2008-10-09 13:44:36
回答 3查看 958关注 0票数 1

我正在使用FormView更新现有的SQL Server记录。and数据源中的行在FormView中显示得很好,我可以编辑它们。当我单击更新时,我得到的是ItemUpdating事件,而不是ItemUpdated事件,并且修订不会写入数据库。

有人能在这方面帮我一下吗?

EN

回答 3

Stack Overflow用户

发布于 2008-10-22 23:45:20

在ItemUpdating事件处理程序中,请确保以下内容:

-If您没有使用开放式并发检查,请删除FormView可能放置在OldValues集合中的任何旧值。

-Make确保存储过程、查询或数据源所需的所有参数都有值,并且在Keys或NewValues集合中命名正确(并确保不存在重复项)。

在某些情况下(通常涉及ObjectDataSource时),我必须覆盖由FormView控件设置的值,方法如下:

代码语言:javascript
运行
复制
protected void myFormView_ItemUpdating(object sender, FormViewUpdateEventArgs e)
    {

        // remove the old values
        e.Keys.Clear();
        e.OldValues.Clear();
        e.NewValues.Clear();

        // set the parameter for the key
        e.Keys.Add("@key", valueGoesHere);

        // set other parameters
        e.NewValues.Add("@param1", aValue);
        e.NewValues.Add("@param2", anotherValue);
    }

它并不美观,但它让您可以绝对控制传递给DataSource的内容。通常,如果您的FormView中的控件都是使用Bind()进行双向数据绑定(而不是Eval)绑定的,那么您不应该这样做,但至少您可以在ItemUpdating中放置一个断点,并打开e.Keys、e.OldValues和e.NewValues集合来查看内容是否为您所期望的内容。

下一步是启动SQL Server事件探查器以运行跟踪并检查正在执行的实际查询。

票数 1
EN

Stack Overflow用户

发布于 2008-10-09 13:49:00

如果去掉ItemUpdating事件和ItemUpdated事件,那么您的SQL语句执行时是否没有错误?

票数 0
EN

Stack Overflow用户

发布于 2008-10-09 13:49:43

我们可以看看sqldatasource是什么样子的吗?您是否记得将sqldatasource中的所有参数放在插入和更新参数列表下?

哦,您是否在itemupdating事件中设置了cancel属性?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/187305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档