ASDTP的博客

当你凝视深渊的时候,深渊也在凝视你。

一般处理程序,使用HTML模板进行字符串的替换。

由于ashx进行字符串拼接太麻烦,直接使用HTML模板,进行字符串替换。就不用在拼接的时候去写html标签。

    public void ProcessRequest(HttpContext context)
    {
        //由于ashx进行字符串拼接太麻烦,直接使用HTML模板,进行字符串替换
        context.Response.ContentType = "text/html";
        //获取index.ashx页面传过来的值
        int qid = Convert.ToInt32(context.Request.QueryString["id"]);


        StringBuilder sb = new StringBuilder();
        
        //拿到模板文件的路径:把虚拟路径转换成绝对路径
        string path = context.Request.MapPath("/ShowTemp.html");
        //打开路径文本文件,并读取所有行,返回字符串类型
        string fileStr = File.ReadAllText(path);
        
#region 查询数据,拼接字符串。
        string str = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
        string sql = "select top(1) Id, UserName, PassWord from t_users where id=@id";
        using (SqlConnection conn = new SqlConnection(str))
        using (SqlCommand cmd = new SqlCommand(sql, conn))
        {
            cmd.Parameters.Add(new SqlParameter("@id", qid));
            conn.Open();
            using (SqlDataReader reader = cmd.ExecuteReader())
            {
                while (reader.Read())
                {
                    //拼接字符串,使用占位符填充数据
                    sb.AppendFormat("<tr><td>{0}</td><td>{1}</td><td>{2}</td></tr>",
                        reader.GetInt32(0),
                        reader.GetString(1),
                        reader["password"]);
                }
            }
        }
#endregion


        //把拼接好的字符串,替换到HTML模板中
        fileStr = fileStr.Replace("@Strtbody", sb.ToString());
        context.Response.Write(fileStr);

    }


根据ID查询成功。

阅读更多
上一篇使用一般处理程序在网页中显示数据
下一篇一般处理程序,网页对数据进行添加
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭