当前位置: 代码迷 >> ASP.NET >> 为什么show.aspx页面不能显示内容?解决方法
  详细解决方案

为什么show.aspx页面不能显示内容?解决方法

热度:9803   发布时间:2013-02-25 00:00:00.0
为什么show.aspx页面不能显示内容?
在default.aspx 页面我是这样写链接代码的:
<a href='Show.aspx?nid=<%#Eval("nclassid")%>&id=<%#Eval("id")%>' ><%# Eval("Title")%></a>
在show.aspx页面放一个组件:
<asp:Repeater ID="Repeater1" runat="server" >
  <ItemTemplate>

  <TABLE class=line20px1 cellSpacing=0 cellPadding=4 
  width="100%" border=0>
   
  <TR>
  <TD vAlign=top>
  <%# DataBinder.Eval(Container.DataItem, "content")%></TD></TR>
   
  </TABLE></ItemTemplate>
  </asp:Repeater>
show.aspx.cs的代码如下:
 
C# code
  int id = System.Convert.ToInt32(Request.Params["id"]);        int nid = System.Convert.ToInt32(Request.Params["nclassid"]);          if (!IsPostBack)        {                        my_conn.Open();            OleDbCommand my_comm = new OleDbCommand("select * from info where [color=#FF0000]nclassid=" + nid + " and [/color]id=" + id + "", my_conn);//这一句是不是有问题?                        Repeater1.DataSource = my_comm.ExecuteReader();            Repeater1.DataBind();            DataSet myDataSet = new DataSet();           }

结果不能显示不了内容啊?没有加 nclassid=" + nid + " and之前可以显示,这是怎么回事? 谢谢!!

------解决方案--------------------------------------------------------
冒泡帮顶接分

my_comm.ExecuteReader();
返回的是什么类型?
------解决方案--------------------------------------------------------
没有加 nclassid=" + nid + " and之前可以显示
====================
是不是你加上这语句查询的时候,数据库里面没有符合的数据呀。你把这SQL语句显示出来,在Access里面运行下看看。
------解决方案--------------------------------------------------------
字符串加加有问题, 引号

引号里再用引号要用 \"
------解决方案--------------------------------------------------------
sql写的有问题,不过不建议这样写,SQL注入攻击
SQL code
select * from info where nclassid ='" + nid + "' and id='" + id + "'"
------解决方案--------------------------------------------------------
C# code
 OleDbCommand my_comm = new OleDbCommand("select * from info where [color=#FF0000]nclassid=@nid and id=@id", my_conn);   myCommand.Parameters.Add(new SqlParameter("@nid", SqlDbType.Int));        myCommand.Parameters["@nid"].Value = nid;        myCommand.Parameters.Add(new SqlParameter("@id", SqlDbType.Int));        myCommand.Parameters["@id"].Value = id;
  相关解决方案