编译错误 
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误信息: CS0118: “System.Web.UI.WebControls.RepeaterItem.DataItem”表示“属性”,此处应为“方法”源错误: 行 40:  <ItemTemplate>
行 41:  <tr>
行 42:  <td align="center"><%# Container.DataItem("ID")%></td>
行 43:  <td align="center"><%# Container.DataItem("username")%></td>
行 44:  <td align="center"><%# Container.DataItem("content")%></td>
 下面是我写的代码:
<HTML>
<HEAD>
<title>首页</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
<script runat=server>
private void conn(object sender, EventArgs e)
{
OleDbConnection Mycon;
OleDbCommand Mycmd;
OleDbDataReader Myreader;
Mycon=new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATASource=user.mdb");
Mycmd=new OleDbCommand("Select * From user",Mycon); //要执行的SQL语句!
Mycon.Open();
Myreader=Mycmd.ExecuteReader();
Repeater.DataSource=Myreader;
Repeater.DataBind();
Myreader.Close();
Mycon.Close();
}
</script>

</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<FONT face="宋体">所有用户信息:</FONT><br>
<asp:Repeater id="Repeater" runat="server">
<HeaderTemplate>
<table border="0">
<tr bgcolor="#3300ff">
<td align="center"><font color="#ffffff">ID</font></td>
<td align="center"><font color="#ffffff">昵称</font></td>
<td align="center"><font color="#ffffff">信息</font></td>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td align="center"><%# Container.DataItem("ID")%></td>
<td align="center"><%# Container.DataItem("username")%></td>
<td align="center"><%# Container.DataItem("content")%></td>
</tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr bgcolor="#ccccff">
<td align="center"><%# Container.DataItem("ID")%></td>
<td align="center"><%# Container.DataItem("username")%></td>
<td align="center"><%# Container.DataItem("content")%></td>
</tr>
</AlternatingItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</form>
</body>
</HTML>

解决方案 »

  1.   


    <%# Container.DataItem("ID")%>
    改成:
    DataBinder.Eval(Container.DataItem,"ID")然后你里面还有username,content也都响应改成这样,看看
      

  2.   

    <%# Container.DataItem("ID")%>
    在VB.net里看的吧,在VB里可以这么用
      

  3.   

    是啊,C#的资料好难找,我都是看的VB的代码书,然后自己翻译成。
      

  4.   

    那个问题解决了,现在又出现这个问题:
    “/aspx/Form”应用程序中的服务器错误。
    --------------------------------------------------------------------------------找不到可安装的 ISAM。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 找不到可安装的 ISAM。源错误: 
    行 27:  Mycon=new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATASource=user.mdb");
    行 28:  Mycmd=new OleDbCommand("Select * From user",Mycon); //要执行的SQL语句!
    行 29:  Mycon.Open();
    行 30:  Myreader=Mycmd.ExecuteReader();
    行 31:  Repeater.DataSource=Myreader;
     源文件: d:\asp_net\form\default.aspx.cs    行: 29 堆栈跟踪: 
    [OleDbException (0x80004005): 找不到可安装的 ISAM。]
       System.Data.OleDb.OleDbConnection.ProcessResults(Int32 hr) +20
       System.Data.OleDb.OleDbConnection.InitializeProvider() +57
       System.Data.OleDb.OleDbConnection.Open() +203
       Form._Default.Page_Load(Object sender, EventArgs e) in d:\asp_net\form\default.aspx.cs:29
       System.Web.UI.Control.OnLoad(EventArgs e) +67
       System.Web.UI.Control.LoadRecursive() +35
       System.Web.UI.Page.ProcessRequestMain() +731