绑定前修改sqldatasource选中的数据?
Posted
技术标签:
【中文标题】绑定前修改sqldatasource选中的数据?【英文标题】:Modify sqldatasource selected data before binding? 【发布时间】:2011-06-03 23:02:31 【问题描述】:如何在绑定之前访问我的 sqldatasource 选择的数据源以进行修改和添加例如新的数据列??
执行这些修改的最佳位置在哪里?
我猜 SqlDataSource1_Selected 是正确的地方,但我不知道如何?
---------更新---------
我找到了如何访问所选数据以显示总记录,但我的问题仍未解决
protected void Page_Load(object sender, EventArgs e)
if (!IsPostBack)
DataTable dt = ((DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty)).Table;
LabelTotal.Text = string.Format("0 items found", dt.Rows.Count);
【问题讨论】:
请注意,这样做会导致 SELECT 命令运行两次(在通常的数据绑定中和在您的代码中再次显式调用它) - 如果查询繁重,这将是低效的。 【参考方案1】:如果您在 .cs 页面上使用自定义代码绑定 GridView
会更好,而不是使用 SqlDataSource。
在 .cs 页面上,您可以在绑定 gridview
之前使用 datatable
执行您的操作。
【讨论】:
谢谢,目前我正在按照您在一些更复杂的页面中所说的做,现在我需要对一些更简单的报告页面进行修改,我以简单的方式仅使用 sqldatasource 和 objectdatasources以上是关于绑定前修改sqldatasource选中的数据?的主要内容,如果未能解决你的问题,请参考以下文章
vs2017关于SqlDataSource无法使用参数控件绑定的问题
c#datagridview删除选中行,并删除SQL数据库中对应行