gyixue
2019-04-12 13:00c#一段代码, 逻辑上有一句 if 有没有都可以,可是去掉就会报错堆栈溢出,加上就没事,大神帮忙看看是什么原因
string str_cnn = "provider=Microsoft.Jet.OLEDB.4.0; Data Source=";
string str_stringfile = "mdb\mydb.mdb";
OleDbCommand cmd;
OleDbConnection cnn;
OleDbDataReader reader;
string str_sql;
string str_conn = str_cnn + MapPath(str_stringfile);
cnn = new OleDbConnection(str_conn);
str_sql = "SELECT t_menuL0.*, t_menuL1.* FROM t_menuL1 RIGHT JOIN t_menuL0 ON t_menuL1.m1_m0id = t_menuL0.m0_id";
cnn.Open();
cmd = new OleDbCommand(str_sql,cnn);
reader = cmd.ExecuteReader();
//以上是数据库的连接和读取
Panel pl_fenlei, pl_fenleixinwen, pl_cr;
HyperLink hl_xiangmu,hl_fenlei;
//这里定义了几个控件用来添加到前台的 下面是数据读取的循环
while (reader.Read()) {
if (FindControl((div_mainm0id.ID).ToString() + "_" + reader["m0_id"].ToString()) == null) {
// 用m0_id 字段创建对应控件, 但是在数据库中有重复出现,所以要检测
hl_fenlei = new HyperLink();
hl_fenlei.Text = reader["m0_ttl"].ToString();
pl_fenlei = new Panel();
pl_fenlei.ID = (div_mainm0id.ID).ToString() + "_" + reader["m0_id"].ToString();
pl_fenlei.CssClass = "fenlei";
pl_fenlei.Controls.Add(hl_fenlei);
pl_fenleixinwen = new Panel();
pl_fenleixinwen.ID = "fenleixinwen" + "_" + reader["m0_id"].ToString();
pl_fenleixinwen.CssClass = "fenleixinwen";
pl_fenlei.Controls.Add(pl_fenleixinwen);
div_mainm0id.Controls.Add(pl_fenlei);
}
hl_xiangmu = new HyperLink();
hl_xiangmu.Text=reader["m1_ttl"].ToString();
if (FindControl("fenleixinwen_" + reader["m1_m0id"].ToString())!=null) {
((Panel)FindControl("fenleixinwen_" + reader["m1_m0id"].ToString())).Controls.Add(hl_xiangmu);
}
// 问题就出在上面的if语句了
}
cnn.Close();
// 前台代码什么都没有 就定义了div标签 向标签里面添加数据
<body>
<form id="form1" runat="server">
<div>
<div runat="server" id="div_mainm0id">
</div>
</div>
<div id="div1"></div>
</form>
</body>
- 点赞
- 回答
- 收藏
- 复制链接分享
2条回答
为你推荐
- 要基于C#做一个远程直播互动课堂软件设计,可以有怎样的方法或思路呢?
- c#
- visual studio
- asp.net
- 1个回答
- C#使用正则表达式,有没有一个方法能把符合条件的部分替换成序数
- c#
- visual studio
- 2个回答
- visual studio2017建立一个web先前版本的窗体网站为什么会默认有一个模板?这个可以设置没有吗
- c#
- visual studio
- asp.net
- 1个回答
- 有没有用C#编写的弹琴或者停车位小游戏的源码?开发环境是V2008,跪求各位大神
- 源码
- 游戏
- visual studio
- c#
- 1个回答
- 买了本asp.net 第一段代码就报错 有人帮忙看看什么问题么 代码照抄的
- c#
- asp.net
- 3个回答
换一换