简单的问题,我猜。
很长一段时间,我以盲目的方式遵循(假定)常用的模式,以编程方式数据绑定我的ASP.NET控件。即:
gridView1.DataSource = someList; gridView1.DataBind();
但是,如果我将GridView设置为通过DataSourceID属性绑定到DataSource控件,则调用DataBind()是不必要的。即:
gridView1.DataSourceID = LinqDataSource1;
足够了。
此外,如果您尝试在ASPX标记中设置DataSource属性,则会遇到以下问题:
You cannot set the DataSource property declaratively.
我假设这些都是相关的,但我仍然认为DataBind()是必要的。 DataSource和DataSourceID之间的区别是次要的 – 我可以理解那里发生的一些魔法。真正的问题是为什么DataSource属性设置器不会自动导致数据绑定?有没有我们想要设置DataSource但不绑定的场景?