急急急,求大神解释代码。详细点谢谢

publicstringGetName(){StringBuildersb=newStringBuilder();DataSetds=TMS.BLL.Student.Ge... public string GetName()
{ StringBuilder sb = new StringBuilder();
DataSet ds = TMS.BLL.Student.GetAllList();
sb.Append(@"
<select name=""Name""> ");
foreach(DataRow dr in ds.Tables[0].Rows)
{ try
{ if (this.Request.QueryString["action"].ToString() == "edit")
{ int stu_id = Convert.ToInt32(this.Request.QueryString["id"].ToString());
TMS.Model.Score score_model = TMS.BLL.Score.GetModel(stu_id);
string student_code1 = (score_model.Expend2.ToString().Split(','))[0];
if (dr["Student_Code"].ToString() == student_code1)
{
sb.Append(@"
<option value=" + dr["Student_Code"] + @"," + dr["Student_Name"] + @" selected=""selected"">" + dr["Student_Name"] + @"</option> ");
}
else {
sb.Append(@"
<option value=" + dr["Student_Code"] + @"," + dr["Student_Name"] + @">" + dr["Student_Name"] + @"</option> ");
}
}
}
catch(Exception ex)
{
sb.Append(@"
<option value=" + dr["Student_Code"] + @"," + dr["Student_Name"] + @">" + dr["Student_Name"] + @"</option>
");
}
}
sb.Append(@"
</select>
");
return sb.ToString();
展开
 我来答
touchfell9ef13ab
2014-05-06 · TA获得超过163个赞
知道小有建树答主
回答量:298
采纳率:0%
帮助的人:99.5万
展开全部

public string GetName()//获取name
       { StringBuilder sb = new StringBuilder();//实例化拼接用的串StringBuilder类型            DataSet ds = TMS.BLL.Student.GetAllList();//获取数据源
           sb.Append(@"
               <select name=""Name"">  ");
           foreach(DataRow dr in ds.Tables[0].Rows)//数据源按记录行遍历
           { try
               {  if (this.Request.QueryString["action"].ToString() == "edit")//如果url请求中action参数=edit
                   {   int stu_id = Convert.ToInt32(this.Request.QueryString["id"].ToString());//获取id参数
                       TMS.Model.Score score_model = TMS.BLL.Score.GetModel(stu_id);//获取模型
                       string student_code1 = (score_model.Expend2.ToString().Split(','))[0];//模型应该是一个数组,数组分割号是逗号
                       if (dr["Student_Code"].ToString() == student_code1)//学生编号判断
                       {
                           sb.Append(@"
                               <option value=" + dr["Student_Code"] + @"," + dr["Student_Name"] + @" selected=""selected"">" + dr["Student_Name"] + @"</option> ");
                       }
                       else {
                           sb.Append(@"
                               <option value=" + dr["Student_Code"] + @"," + dr["Student_Name"] + @">" + dr["Student_Name"] + @"</option> ");
                       }
                   }
               }
               catch(Exception ex)//捕捉错误,如果有错误
               {
                   sb.Append(@"
                       <option value=" + dr["Student_Code"] + @"," + dr["Student_Name"] + @">" + dr["Student_Name"] + @"</option>
                   ");
               }
      }
           sb.Append(@"
               </select>
           ");
           return sb.ToString();


流程:从某个地方获得数据,按指定方式拼接成html代码,返回拼接好的代码
追问
sb.Append(@"" + dr["Student_Name"] + @" "); 
这个什么意思 为什么有两个 dr["Student_Name"]
追答
dr["Student_Name"]   记录行datarow的Student_Name列   这只是个引用
你要写10个 他就得到10个 有什么关系
比如一行记录

id name
1 小王
dr["Student_Name"] +dr["Student_Name"] +dr["Student_Name"]
就是 小王小王小王
富港检测技术(东莞)有限公司_
2024-06-06 广告
ISTA3L是一个基于研究、数据驱动的测试协议,它模拟了由零售公司完成的产品订单被直接运送给消费者时所经历的危险,它允许用户评估包装产品的能力,以承受运输和处理包装产品时所经历的供应链危险,从接收到任何电子商务零售商履行操作,直到最终消费者... 点击进入详情页
本回答由富港检测技术(东莞)有限公司_提供
elfasd
2014-05-06 · TA获得超过152个赞
知道小有建树答主
回答量:173
采纳率:100%
帮助的人:130万
展开全部
从数据库读取数据在前台拼接<select>下拉框
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式