string str1 = "";
Selectdb db = new Selectdb();
string starttimen = TextBox3.Text;
string endtime = TextBox4.Text;
string allsql = ViewState["Str"].ToString();
string chaxun = ViewState["WhereStr"].ToString();
//string allsql = string.Format("select OLDTXCODE,OPERATORNO,COUNT(amount) as numb ,sum(cast(amount as bigint)) as amt from dbo.View_ZSB group by OLDTXCODE,OPERATORNO");
DataSet ds;
if (str1 == allsql)
{
ds = db.GetTableList(str1);
DataTable dt1 = ds.Tables[0];
if (dt1.Rows.Count > 0)
{
DataTable2Excel(dt1);
}
}
else if (str1 == chaxun)
{
ds = db.GetTableList(str1);
DataTable dt = ds.Tables[0];
if (dt.Rows.Count > 0)
{
DataTable2Excel(dt);
}
} else
{
Response.Write("<script language=javascript>alert('没有数据!');</script>");
return;
}为什么不执行if语句???? 帮忙看下阿.
Selectdb db = new Selectdb();
string starttimen = TextBox3.Text;
string endtime = TextBox4.Text;
string allsql = ViewState["Str"].ToString();
string chaxun = ViewState["WhereStr"].ToString();
//string allsql = string.Format("select OLDTXCODE,OPERATORNO,COUNT(amount) as numb ,sum(cast(amount as bigint)) as amt from dbo.View_ZSB group by OLDTXCODE,OPERATORNO");
DataSet ds;
if (str1 == allsql)
{
ds = db.GetTableList(str1);
DataTable dt1 = ds.Tables[0];
if (dt1.Rows.Count > 0)
{
DataTable2Excel(dt1);
}
}
else if (str1 == chaxun)
{
ds = db.GetTableList(str1);
DataTable dt = ds.Tables[0];
if (dt.Rows.Count > 0)
{
DataTable2Excel(dt);
}
} else
{
Response.Write("<script language=javascript>alert('没有数据!');</script>");
return;
}为什么不执行if语句???? 帮忙看下阿.
string chaxun = ViewState["WhereStr"]==null?"":ViewState["WhereStr"].ToString();不会调试的程序员不是好厨师
你 ( != ) 应该就进去了
断点ViewState["Str"]的值
string allsql 调试看了,是有值的, . 我的想法是. 把allsql的值赋给str1 然后执行if下面的条件.
可是不知道为什么if(str1==allsql)就不执行下面的方法了.
断点调试看了 是有值的,
if(str1==allsql) 是不是这样赋值有问题呢?
在if(...)怎么判断把allsql的值 赋给st1呢???
这样不是赋值,是比较。str1=allsql.toString(); 这样才是赋值
string str1 = "";
Selectdb db = new Selectdb();
string starttimen = TextBox3.Text;
string endtime = TextBox4.Text;
string allsql = ViewState["Str"].ToString();
string chaxun = ViewState["WhereStr"].ToString();
//string allsql = string.Format("select OLDTXCODE,OPERATORNO,COUNT(amount) as numb ,sum(cast(amount as bigint)) as amt from dbo.View_ZSB group by OLDTXCODE,OPERATORNO");
DataSet ds;
if (str1 == allsql)
以上是IF前的语句 你给str1赋值 是空 对吧 然后到if 也没再赋值 那str1是空
allsql = ViewState["Str"].ToString(); 所以allsql 是这个值 也就是 ViewState["Str"]如果不是空 就不会执行if 所以 你找找 赋值的地方吧
string str1="" ;
Selectdb db = new Selectdb();
string starttimen = TextBox3.Text;
string endtime = TextBox4.Text;
string allsql = string.Format("select OLDTXCODE,OPERATORNO,COUNT(amount) as numb ,sum(cast(amount as bigint)) as amt from dbo.View_ZSB group by OLDTXCODE,OPERATORNO");
string chaxun = string.Format("select OLDTXCODE,OPERATORNO,COUNT(amount) as numb,sum(cast(amount as bigint)) as amt from dbo.View_ZSB where OPERATORNO='0101' group by OLDTXCODE,OPERATORNO");
DataSet ds;
if (......)//这里的条件怎么写阿?
{
ds = db.GetTableList(str1);//想把allsql传到这里来执行方法.
DataTable dt1 = ds.Tables[0];
if (dt1.Rows.Count > 0)
{
DataTable2Excel(dt1);
}
}
else if (.....)////这里的条件怎么写阿?
{
ds = db.GetTableList(str1);//想把chaxun传到这里来执行方法.
DataTable dt = ds.Tables[0];
if (dt.Rows.Count > 0)
{
DataTable2Excel(dt);
}
}
你需要判断什么 别人不知道你该判断后 这样写
string allsql="";
if(...){
allsql= string.Format("select OLDTXCODE,OPERATORNO,COUNT(amount) as numb ,sum(cast(amount as bigint)) as amt from dbo.View_ZSB group by OLDTXCODE,OPERATORNO");
}else{
allsql = string.Format("select OLDTXCODE,OPERATORNO,COUNT(amount) as numb,sum(cast(amount as bigint)) as amt from dbo.View_ZSB where OPERATORNO='0101' group by OLDTXCODE,OPERATORNO");
}
ds = db.GetTableList( allsql );//想把allsql传到这里来执行方法.
DataTable dt1 = ds.Tables[0];
if (dt1.Rows.Count > 0)
{
DataTable2Excel(dt1);
}