
以下是引用片段:
void Page_Load(object o, EventArgs e)
...{
DataTable dt = GetData()//assume GetData returns the DataTable
//probably better to use Hashtable for depts and months too, but to keep the order, let’s use ArrayList
string sSeparator = ":"
ArrayList alDept = new ArrayList()//种类
ArrayList alMonth = new ArrayList()//代码
Hashtable ht = new Hashtable()
foreach (DataRow dr in dt.Rows)
...{
string sDept = dr["c"].ToString()
string sMonth2 = dr["p"].ToString()
//将产地代码转换为产地名称
string sMonth = GetData2(sMonth2)
if (!alDept.Contains(sDept))
alDept.Add(sDept)
if (!alMonth.Contains(sMonth))
alMonth.Add(sMonth)
ht[sDept+ sSeparator + sMonth] = dr["a"]
}
TableRow tr = new TableRow()
TableCell tc = new TableCell()
//tc.Text = " "
//tr.Cells.Add(tc)
foreach (string sDept in alDept)
...{
int i=0//用于计算某一种类的数量
foreach (string sMonth in alMonth)
...{
if(ht[sDept+ sSeparator + sMonth]==null)
...{
i=i+0
}
else
...{
i = i + int.Parse(ht[sDept+ sSeparator + sMonth].ToString())
}
}
tc = new TableCell()
tc.Text= sDept+"("+i+")"
tr.Cells.Add(tc)
}
/**//*foreach (string sDept in alDept)
{
tc = new TableCell()
tc.Text= sDept
tr.Cells.Add(tc)
} */
Table1.Rows.Add(tr)
foreach (string sMonth in alMonth)
...{
tr = new TableRow()
/**//*tc = new TableCell()
tc.Text = sMonth
tr.Cells.Add(tc)*/
foreach (string sDept in alDept)
...{
tc = new TableCell()
if(ht[sDept+ sSeparator + sMonth]==null)
...{
tc.Text=sMonth+"(0)"
}
else
...{
tc.Text = sMonth+"("+ ht[sDept+ sSeparator + sMonth].ToString()+")"
}
tr.Cells.Add(tc)
}
Table1.Rows.Add(tr)
}
}
Web 窗体设计器生成的代码#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
...{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent()
base.OnInit(e)
在shell中的条件判断语句格式为:
其中elif和else不是必须的,如果只需判断一次,那么if...fi即可。值得注意的是if后面中括号[]中的语句[的后面和]的前面必须要有空格。
下面通过判断大小和文件是否存在看一下判断语句的用法:
-gt 大于 (greater than);
-lt 小于(less than);
-eq 等于(equal);
-ne 不等于(not equal);
-ge 大于等于(greater equal)
-le 小于等于(less equal)。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)