多个GridView使用一个ObjectDataSource做为数据源的问题!

qq22345111 2010-10-21 11:59:58
在asp.net中的控件GridView如果使用ObjectDataSource做为数据源与他对应

那么1个GridView就必须对应一个ObjectDataSource,由此,我想是否能够进行动态的管理

既:只是需要一个ObjectDataSource就可以管理所有的GridView的数据源
<asp:GridView ID="GridView1" runat="server"  DataSourceID="ObjectDataSource1" Width="100%">
</asp:GridView >
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="Get" TypeName="OjbData"
OldValuesParameterFormatString="original_{0}"></asp:ObjectDataSource>


普通情况下,我们是这样使用的,如果有GridView2,那么就需要ObjectDataSource2
----------PS:我是万恶的分割线------------
能否通过某个方法GridView1->n都只是一个ObjectDataSource,只是需要传递给ObjectSourceData不同的SelectMethod="方法"
就可以了呢?

期待大家的回复!


...全文
135 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
koukoujiayi 2010-10-21
  • 打赏
  • 举报
回复
应该是完全可以,只要设置ObjectDataSource参数即可,
例如对查询来说只要设置两个参数即可!
GridView1:
ObjectDataSource1.TypeName = "你的TableAdapter1";
ObjectDataSource1.SelectMethod = "GetData1";
GridView1.DataSourceID = "ObjectDataSource1";

GridView2:
ObjectDataSource1.TypeName = "你的TableAdapter2";
ObjectDataSource1.SelectMethod = "GetData2";
GridView2.DataSourceID = "ObjectDataSource1";
「已注销」 2010-10-21
  • 打赏
  • 举报
回复
应该可以的 我没有试下
你可以试一下的
孟子E章 2010-10-21
  • 打赏
  • 举报
回复
可以的,一切都是可编程的
qq22345111 2010-10-21
  • 打赏
  • 举报
回复
其实很简单了!
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="Get" TypeName="OjbData"
OldValuesParameterFormatString="original_{0}"></asp:ObjectDataSource>
selectMethod 与TypeName 能不能接受动态的值
kke_007 2010-10-21
  • 打赏
  • 举报
回复
GridView1不会。。
帮顶
ObjectDataSource 也没用过
adodotnet 2010-10-21
  • 打赏
  • 举报
回复
给ObjectDataSource的SelectMethod传递不同参数,根据参数返回结果不是更符合理吗?


qq22345111 2010-10-21
  • 打赏
  • 举报
回复
<asp:GridView ID="GridView1" runat="server" DataSourceID="。。/ObjectDataSource1?SelectMethod执行方法的参数">
</asp:GridView>
然后objectDataSource的SelectMethod接受这个参数
A.aspx就传递参数“A”
B.aspx就传递参数“B”

ObjectDataSource接受到A.aspx的请求就SelectMethod=A.
ObjectDataSource接受到B.aspx的请求就SelectMethod=B

纯理论,实现有难度。。。想到的方法是重写
qq22345111 2010-10-21
  • 打赏
  • 举报
回复
你们能不能这样,还要不要人活了!
GridView1:
ObjectDataSource1.TypeName = "你的TableAdapter1";
ObjectDataSource1.SelectMethod = "GetData1";
GridView1.DataSourceID = "Object……
还是在1-1的范畴

jackyuen1 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 koukoujiayi 的回复:]
应该是完全可以,只要设置ObjectDataSource参数即可,
例如对查询来说只要设置两个参数即可!
GridView1:
ObjectDataSource1.TypeName = "你的TableAdapter1";
ObjectDataSource1.SelectMethod = "GetData1";
GridView1.DataSourceID = "Object……
[/Quote]
支持
Rock870210 2010-10-21
  • 打赏
  • 举报
回复
这样做虽然是初始化显示的时候方便了,但是,如果涉及到操作,比如Update、Delete等,ObjectDataSource中的属性已经发生改变,每次操作都要去判断是哪个GridView,如此,岂不是自讨苦吃
super1021love 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 koukoujiayi 的回复:]
应该是完全可以,只要设置ObjectDataSource参数即可,
例如对查询来说只要设置两个参数即可!
GridView1:
ObjectDataSource1.TypeName = "你的TableAdapter1";
ObjectDataSource1.SelectMethod = "GetData1";
GridView1.DataSourceID = "Object……
[/Quote] 正解
super1021love 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xionglin99 的回复:]
应该可以的 我没有试下
你可以试一下的
[/Quote]正解
hookyzlr 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 koukoujiayi 的回复:]
应该是完全可以,只要设置ObjectDataSource参数即可,
例如对查询来说只要设置两个参数即可!
GridView1:
ObjectDataSource1.TypeName = "你的TableAdapter1";
ObjectDataSource1.SelectMethod = "GetData1";
GridView1.DataSourceID = "Object……
[/Quote]
正解
cys1016116747 2010-10-21
  • 打赏
  • 举报
回复
没试过正在期待中

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧