日期:2014-05-18 浏览次数:20487 次
<asp:BoundField DataField="zh_Staff.Staff_name" HeaderText="制单人"> <ItemStyle HorizontalAlign="Center" Width="60px" /> <HeaderStyle HorizontalAlign="Center" Width="60px" /> </asp:BoundField>
<asp:LinkButton ID="LinkButton1" runat="server" Text='<%# Eval("zh_Staff_1.Staff_name") %>' CommandArgument='<%# Eval("Supplier") %>' OnClick="LinkButton1_Click"></asp:LinkButton>
<asp:BoundField DataField="[color=#FF0000]zh_Staff.Staff_name[/color]" HeaderText="制单人"> <ItemStyle HorizontalAlign="Center" Width="60px" /> <HeaderStyle HorizontalAlign="Center" Width="60px" /> </asp:BoundField>
------解决方案--------------------
<asp:BoundField DataField="Staff_name" HeaderText="制单人">
------解决方案--------------------
<asp:LinkButton ID="LinkButton1" runat="server" Text='<%# Eval("Staff_name") %>' CommandArgument='<%# Eval("Supplier") %>' OnClick="LinkButton1_Click"></asp:LinkButton>
直接这样写不可以吗?
------解决方案--------------------
既然是同一个Staff_name,又何必写两次,如果要写两次,应该给zh_Staff_1.Staff_name一个别名 as Staff_name1 啊
变通的方法有很多,又何必执拗于代码上呢。本身你这样写SQL语句就有问题,搜索出来的表里本来就不应该有同名的字段
------解决方案--------------------
<asp:BoundField DataField="zh_Staff.Staff_name" HeaderText="制单人">
<ItemStyle HorizontalAlign="Center" Width="60px" />
<HeaderStyle HorizontalAlign="Center" Width="60px" />
</asp:BoundField>
这里用zh_Staff.Staff_name ,会被作为DataTable的字段名
Eval("zh_Staff_1.Staff_name")
这里的zh_Staff_1.Staff_name 不是被当作 DataRowView["zh_Staff_1.Staff_name "]来使用
而是被当作DataRowView.zh_Staff_1.Staff_name 来使用了,所以出错了