为什么不能这么声明DataSource?
方法一:
<script runat="server">
private ArrayList GetSource()
{
ArrayList al = new ArrayList();
... ...
return al;
}
protected void Page_Load(object sender, EventArgs e)
{
GridView1.DataSource = GetSource();
GridView1.DataBind();
}
</script>
<asp:GridView ID="GridView1" runat="server" DataSource="GetSource()">
<Columns>
<asp:BoundField DataField="Email" HeaderText="电子邮件" />
</Columns>
</asp:GridView>
方法二
<script runat="server">
private ArrayList GetSource()
{
ArrayList al = new ArrayList();
... ...
return al;
}
</script>
<asp:GridView ID="GridView1" runat="server" DataSource="GetSource()">
<Columns>
<asp:BoundField DataField="Email" HeaderText="电子邮件" />
</Columns>
</asp:GridView>
为什么方法一正确,而方法二会出错误 不能以声明的方式设置“DataSource”属性
我感觉两种方式的效果应该是一样的,为什么会出这种错误呢?请高手指点