Asp.net 生成无限标签
我编写了一个评论页面。其工作正常,但所有选定的Asp.net 生成无限标签,asp.net,comments,Asp.net,Comments,我编写了一个评论页面。其工作正常,但所有选定的记录都将使用Response.Write(dr[0].ToString())显示但是使用响应。写我们无法有序地管理它们。因此,我决定在标签中显示记录,但我对使用分页不感兴趣。那么,现在要在每次更新记录时自动添加一组新的标签(即集是一组标签名称、电子邮件、网站和评论) 我还尝试使用标签而不是响应。写入,但在标签中只显示最后一条记录 请告诉我如何显示每组标签中的每条记录 我的代码如下 using System; using System.Collecti
记录都将使用Response.Write(dr[0].ToString())显示代码>但是使用响应。写我们无法有序地管理它们。因此,我决定在标签中显示记录,但我对使用分页不感兴趣。那么,现在要在每次更新记录时自动添加一组新的标签
(即集
是一组标签名称、电子邮件、网站和评论)
我还尝试使用标签
而不是响应。写入
,但在标签中只显示最后一条记录
请告诉我如何显示每组标签中的每条记录
我的代码如下
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.Odbc;
public partial class comment : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" + "SERVER=localhost;" + "DATABASE=test_com;" + "UID=root;" + "PASSWORD=*****;" + "OPTION=3";
OdbcConnection MyConnection = new OdbcConnection(MyConString);
MyConnection.Open();
OdbcCommand cmd = new OdbcCommand("Select name, email, website, comments from awm_comments", MyConnection);
OdbcDataReader dr = cmd.ExecuteReader();
if (dr.HasRows == false)
{
throw new Exception();
}
while (dr.Read())
{
Response.Write(dr[0].ToString());
Response.Write(dr[1].ToString());
Response.Write(dr[2].ToString());
Response.Write(dr[3].ToString());
/* test using labels. Being displayed only last record.
Label1.Text = dr[0].ToString();
Label2.Text = dr[1].ToString();
Label3.Text = dr[2].ToString();
Label4.Text = dr[3].ToString();
*/
}
}
protected void Submit_Click(object sender, EventArgs e)
{
string name = tb_name.Text;
string email = tb_email.Text;
string website = tb_website.Text;
string comment = tb_comment.Text;
string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" + "SERVER=localhost;" + "DATABASE=test_com;" + "UID=root;" + "PASSWORD=******;" + "OPTION=3";
OdbcConnection MyConnection = new OdbcConnection(MyConString);
OdbcCommand cmd = new OdbcCommand("INSERT INTO awm_comments(name, email, website, comments, notify)VALUES(?, ?, ?, ?, ?)", MyConnection);
cmd.Parameters.Add("@email", OdbcType.VarChar, 255).Value = name;
cmd.Parameters.Add("@alternate_email", OdbcType.VarChar, 255).Value = email;
cmd.Parameters.Add("@ipaddr", OdbcType.VarChar, 255).Value = website;
cmd.Parameters.Add("@security_question", OdbcType.VarChar, 255).Value = comment;
if (cb_notify.Checked == true)
{
int not = 1;
cmd.Parameters.Add("@security_question", OdbcType.Int, 11).Value = not;
}
else if (cb_notify.Checked == false)
{
int not = 0;
cmd.Parameters.Add("@security_question", OdbcType.Int, 11).Value = not;
}
MyConnection.Open();
cmd.ExecuteNonQuery();
MyConnection.Close();
}
}
试试这个:
Label1.Text += dr[0].ToString() + "<br/>";
Label2.Text += dr[1].ToString() + "<br/>";
Label3.Text += dr[2].ToString() + "<br/>";
Label4.Text += dr[3].ToString() + "<br/>";
Label1.Text+=dr[0].ToString()+“
”;
Label2.Text+=dr[1].ToString()+“
”;
Label3.Text+=dr[2].ToString()+“
”;
Label4.Text+=dr[3].ToString()+“
”;
+=
运算符,用于将文本附加到标签的现有文本中,以及
用于换行我建议您将大部分现有内容划掉,并使用中继器
遵循以下基本的如何使用repeater文章您是否可以使用绑定到数据源的repeater控件来检索当前使用OdbcConnection获取的记录?然后使用它们的索引或其他标记对它们进行迭代
太棒了。这工作正常,但第一个标签的所有记录都按顺序显示,然后按第二个顺序显示。我需要一种固定的方式。