【发布时间】:2011-01-26 17:09:48
【问题描述】:
自从我将 DataTable 移动到不同的函数后,我遇到了以下错误。
Both DataSource and DataSourceID are defined on 'TestView'. Remove one definition.
无论如何,如果您有关于样式/标准的提示,我也欢迎您,我对 aspx 编码非常陌生。知道是什么原因造成的吗?当它不是它自己的功能时,它以前没有发生过。是局部变量问题吗?
这是绑定并在错误中突出显示的代码:
testDAO tda = new testDAO();
DataTable testTable = new DataTable("TestView");
testTable = tda.GetTestTable();
TestView.DataSource = testTable;
TestView.DataBind();
GetTestTable() 的代码如下:
public DataTable GetTestTable()
{
DataTable testTable = new DataTable("TestView");
testTable.Columns.Add("testdata", typeof(String));
testTable.Columns.Add("user", typeof(String));
testTable.Columns.Add("date", typeof(String));
DataRow arow = testTable.NewRow();
arow["testdata"] = "test data";
arow["user"] = "System";
arow["date"] = "";
testTable.Rows.Add(arow);
return testTable;
}
aspx 文件中的列表视图:
<asp:ListView ID="TestView" runat="server">
<ItemTemplate>
<tr id="row" runat="server" class='<%# Container.DataItemIndex % 2 == 0 ? "row" : "altrow" %>'>
<td align="left">
<%# Eval("testdata") %>
</td>
<td align="center">
<%# Eval("user") %>
</td>
<td align="center">
<%# Eval("date") %>
</td>
</tr>
</ItemTemplate>
<LayoutTemplate>
<table class="system">
<tr>
<th>
Test Data
</th>
<th>
User
</th>
<th>
Date
</th>
</tr>
<tr id="itemPlaceholder" runat="server" />
</table>
</LayoutTemplate>
</asp:ListView>
【问题讨论】:
标签: c# asp.net listview datatable