你的这段代码只是一部分查询程序的,因为你前期定义不明确所以注释起来只能根据大概给你解释下你自己对照理解下吧。(另外像这样每行解释不大现实因为你的一些定义不是所有人都这样定义字符串的)
db.SQL = "select count(1) from 订单条目 where 菜名=" + "'" + dt.Rows[0]["菜名"].ToString() + "'";//这一句是定义查询字符串的,从订单条目的数据表中查询菜名符合datatable菜名一行的
int count = int.Parse(db.ExcuteScalar().ToString());//int.Parse把编程的字符串变为整形变量,这句代码的功能为其它类型变量通过字符串作为中介转换为int型变量
if (count > 0)//判断下count是什么值,然后执行下面相用操作。总的来说这个判断是如果count大于0,那么就执行查询,查到了就再进行变量转换赋值给cou,然后再判断cou是1还是0,是1的话在进行查询,查到就赋值scoer1.s,如果查不到scoer1.s就等于0。
{
db.SQL = "select count(1) from 订单条目 where 菜名=" + "'" + dt.Rows[0]["菜名"].ToString() + "'" + "and 评分!='0'";
int cou = int.Parse(db.ExcuteScalar().ToString());
if (cou > 0)
{
db.SQL = " select avg(评分) from 订单条目 where 菜名=" + "'" + dt.Rows[0]["菜名"].ToString() + "'" + "and 评分!='0'";
scoer1.s = int.Parse(db.ExcuteScalar().ToString());
}
else { scoer1.s = 0; }
}
else
{
scoer1.s = 0;
}
}
public void BuildSession(DataTable car)//这一段主要意思是将datatable中的数据读取后相应的缓存出来以备后面语句查询或赋值使用。
{
DataRow dr = car.NewRow();
dr["菜名"] = this.ltl菜名.Text.Trim();
dr["数量"] = int.Parse(DropDownList订餐数量.Text);
dr["价格"] = this.ltl价格.Text.Trim();
float totalMoney = 0;
float cprice = float.Parse(ltl价格.Text);
for (int i = 1; i <= int.Parse(DropDownList订餐数量.Text.ToString()); i++)
{
totalMoney = totalMoney + cprice;
}
dr["总价"] = totalMoney;
car.Rows.Add(dr);
Session["Car"] = car;
}
你什么地方不明白的 说明一下