这是一般的DataBind工作问题......
我有一个带有GridView的简单页面(在aspx代码中)绑定到ObjectDataSource。
我可以查看ObjectDataSource调用的Select()函数,看看它是在初始加载和每个回发时调用的。我有一些逻辑发生在post backs上会影响GridView的数据,我想稍后在帖子后面调用GridView.DataBind(),之后我做了一些更改。
有没有办法阻止每个帖子上发生的自动重新绑定?这是否意味着我不能将ObjectDataSource用于此控件?
答案 0 :(得分:12)
你是正确的,你正在寻找的细粒度控制是不可能的,并且需要背后的代码。 ASP.NET的数据源对象只不过是a **的痛苦。当你使用它们时,你会发现这样的情况会一次又一次地出现。
你会发现的一些问题是:
我已经开始在后面的代码中进行所有数据访问,但没有回头。
答案 1 :(得分:9)
我也使用这种自动绑定进行战斗,并认为我在这里发布了我的解决方案:
我花了一些时间来弄明白这一点,但现在一切正常。
<强>上下文强>
我使用ObjectDatasource,因为它为我自动处理了Gridview的所有分页和排序。我正在使用Linq2SQL的数据层并使用其Skip()和Take()方法仅加载填充GridView的一页所需的数据量。
使用ObjectDataSource的 SelectMethod 和 SelectCountMethod
答案 2 :(得分:2)
是。如果您希望在数据绑定发生时进行这种控制,则需要在后面的代码中执行此操作。