用DataList做首页新闻程序出奇怪的错误……附代码(50分)

  • 主题发起人 主题发起人 Smile.java
  • 开始时间 开始时间
S

Smile.java

Unregistered / Unconfirmed
GUEST, unregistred user!
Default.aspx中
<asp:DataList id="dlSyNews" runat="server">
<ItemTemplate>
<a href="ReadNews.aspx?SyNewsID=<%# DataBinder.Eval(Container.DataItem, "bt")%>" target="_blank">
<%# DataBinder.Eval(Container.DataItem, "bt")%>
</a>
</ItemTemplate>
</asp:DataList>
手工加的代码,运行正常,加上<a href="ReadNews.aspx?SyNewsID=<%# DataBinder.Eval(Container.DataItem, "bt")%>" target="_blank">这句后也是运行正常,但不让返回设计视图,提示“未能在设计视图中打开。在<%…"值"…%>块中,以不同方式将值括起来”。
怎样解决呢?想实现链接在DataList中有更好的方法吗?
Default.aspx.cs中
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("text_db.mdb") + ";User Id=admin;Password=;");
conn.Open();
DataSet ds = new DataSet();
OleDbDataAdapter da = new OleDbDataAdapter("select top 10 * from syz1",conn);
da.Fill(ds,"syz1");
dlSyNews.DataSource = ds;
//ds.Tables["synews"].DefaultView;
dlSyNews.DataKeyField = "bt";
dlSyNews.DataBind();
}
 
你看一下,ODBC 有没有做好
 
应该这样写
<a href='<%# "ReadNews.aspx?SyNewsID="+DataBinder.Eval(Container.DataItem, "bt")%>' target="_blank">
只要有数据绑定,就要将字符串全部包括进<%# %>中,在外面加上单引号
 
接受答案了.
 
后退
顶部