ASP.net GridView - 使用dataSource - C#

3
我正在使用一个与数据源(业务逻辑中的类)相关联的 ASP 网站中的 showGrid。该数据源有两个方法 - Retrieve 和 Update。
当我在 showGrid 上更新项目时,它会自动将更新行的参数发送到方法,然后我使用该方法来更新数据库。
如何向演示逻辑返回成功更新的消息?一切都是自动完成的,我甚至不使用 GridView1_RowUpdating 处理程序,也找不到 showGrid 和数据源之间如何通信的方法。
这就是我如何将方法添加为 showGrid 的数据源,并且这是被调用的函数。
 public bool UpdateSpecificSubject(string sj_name, string sJ_descr, Int32 sj_max_enrollment_no, bool sj_avail, string sj_prerequisite_no, string sj_id)
    {
        try
        {

            SubjectsDSTableAdapters.subjectsTableAdapter subjectsAdapter1 = new SubjectsDSTableAdapters.subjectsTableAdapter();
            subjectsAdapter1.UpdateOneSubject(sj_name, sJ_descr, sj_max_enrollment_no, sj_avail, sj_id);
            subjectsAdapter1.UpdatePrerequisite(sj_prerequisite_no, sj_id);
            return true;

        }

        catch (Exception)
        {
            Console.Write("Error in connecting to Subjects table");
            return false;

        }

    }

非常感谢您的帮助,如果您能提供任何帮助,我们将不胜感激!

2个回答

1

要理解grdiview和datasource的工作原理,您需要阅读本文。

由于您正在绑定类,因此现在只需关注objectdatasource。

这里是MSDN文章...

为了从您的类中获取函数的返回值,请实现ObjectDataSource的Updated和Inserted事件。ObjectDataSourceStatusEventArgs事件参数将以e.ReturnValue形式返回返回值。

  <asp:ObjectDataSource OnUpdated="ObjectDataSourceStatusEventHandler" />

谢谢Shafqat,但这篇文章并没有回答我的问题。我已经让ObjectDataSource工作了,现在只想返回成功或失败的标志。 - RonaDona
请实现ObjectDataSource的更新和插入事件,并使用ObjectDataSourceStatusEventArgs e.ReturnValue获取返回值。 - Shafqat Masood
嗨,伙计, 我尝试过了,但还是不行。这是我所做的: protected void GridView1_RowUpdated(object sender, ObjectDataSourceStatusEventArgs e) { Label1.Text = (string)e.ReturnValue; } - RonaDona
不要使用Row Updated,我正在谈论ObjectDataSource的Updated事件实现。 - Shafqat Masood

1
我有同样的问题。看起来你需要在代码中使用onUpdated和Oninserted事件来引用ObjectDataSource。然后,ObjectDataSourceStatusEventArgs将返回值作为e.ReturnValue。
<asp:ObjectDataSource OnUpdated="ObjectDataSourceStatusEventHandler" />

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接