C# 如何使用asp.net制作评论回复系统。?

C# 如何使用asp.net制作评论回复系统。?,c#,asp.net,c#-4.0,C#,Asp.net,C# 4.0,我想在一个div上显示一个帖子,然后在下面显示该帖子的回复,并连续显示另一个帖子和回复。。。 我做了这么多,但这并没有显示期望的输出 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.S

我想在一个div上显示一个帖子,然后在下面显示该帖子的回复,并连续显示另一个帖子和回复。。。 我做了这么多,但这并没有显示期望的输出

 using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Data.SqlClient;

    public partial class Default3 : System.Web.UI.Page
    {
        int i = 0;
        SqlConnection con = new SqlConnection("server=LOD-PC;uid=sa;pwd=1234;database=db2");
        protected void Page_Load(object sender, EventArgs e)
        {
            con.Open();
            SqlCommand cmd = new SqlCommand("select * from t3 ORDER by id DESC", con);
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                i++;
                string name = dr["name"].ToString();
                string image1 = dr["img"].ToString();
                string image2 = image1.Substring(2).ToString();
                string id = dr["id"].ToString();
                string status = dr["status"].ToString();
                string buttonid = i.ToString();

                Response.Write("<div id='myDiv' class='myDivClass'> <img src='" + image2 + "' style='width:50px; height:50px; float:left; margin-right:6px;' /> <br/> <br/> <span class='name'> <input id='texta' class='texta' type='text' value=" + name.ToString() + " /> <span/> <span class='id'> <input id='textb' class='textb' type='text' value=" + id.ToString() + " /> <span/> <div id='g'><br/><br/><br/><span class='status'> " + status + " </span> <span class='combutton'> <input id='"+buttonid+"'  class='button' type='button' value='Comment'/> </span> </div> </div>");
            }
            con.Close();
        }
    }
使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Web.UI;
使用System.Web.UI.WebControl;
使用System.Data.SqlClient;
公共部分类Default3:System.Web.UI.Page
{
int i=0;
SqlConnection con=newsqlconnection(“server=LOD-PC;uid=sa;pwd=1234;database=db2”);
受保护的无效页面加载(对象发送方、事件参数e)
{
con.Open();
SqlCommand cmd=新的SqlCommand(“按id DESC从t3订单中选择*”,con);
SqlDataReader dr=cmd.ExecuteReader();
while(dr.Read())
{
i++;
字符串名称=dr[“name”].ToString();
字符串image1=dr[“img”].ToString();
字符串image2=image1.Substring(2.ToString();
字符串id=dr[“id”].ToString();
字符串状态=dr[“status”].ToString();
string buttonid=i.ToString();
响应。写入(“




”+状态+”; } con.Close(); } }
基于SQL查询输出HTML时,您没有引用文本作为值:

value=" + id.ToString() + " />
那应该是

值=“+id.ToString()+”/>

除此之外,您还必须提供更多信息,说明哪些内容没有按您预期的那样出现。不过,我可以谈谈以下几点:

Response.Write(“任何asp标记”)

ASP标记是在服务器端而不是客户端处理的。将它们写入响应不会导致执行它们。如果您在浏览器中查看HTML上的源代码,您将在HTML源代码中看到标记,但它们对浏览器没有任何特殊意义

请处理实现IDisposable的东西,例如SqlConnection、SqlCommand和SqlDataReader。使用关键字是达到目的的方法。例如

SqlConnection con = new SqlConnection("server=LOD-PC;uid=sa;pwd=1234;database=db2");
线路

con.Close();
如果在访问数据库时引发异常,则不会执行

相反,请使用表单

using (SqlConnection con = 
     new SqlConnection("server=LOD-PC;uid=sa;pwd=1234;database=db2"))
{
    // Do stuff with the connection
}
当using块超出范围时,它将自动调用
con.Dispose()
(无论块内是否引发异常),这反过来将调用
con.Close()

服务器=LOD-PC;uid=sa


请不要与
sa
用户连接。这就是要求安全裤。

以及我使用Response.Write(“任何asp标记”)时;如果您不让我们猜测它显示了什么以及输出有什么问题,您将得到更好的帮助。一般来说,不要在
页面中使用
Response.Write()
。改用web控件。