在后台程序中创建一维string数组赋值,然后指定为数据源的问题

GemTony 2021-01-31 10:49:09
在如下后台方法中:


DataTable dt1 = SQLDBHelper.selectDB("Select Boy from SteffInfo where ID='" + Session["ID"].ToString() + "'");
string[] boylist;
string[] namelist;
if (dt1.Rows[0][0].ToString() != "")
{
boylist= dt1.Rows[0][0].ToString().Split(' ');
namelist = new string[boylist.Length];//这里有无问题?

//循环查出男生的姓名与工号
for (int i = 0; i < likelist.Length; i++)
{
DataTable dt2 = SQLDBHelper.selectDB("Select ID,Boyname from CorpInfo where ID='" + boylist[i].ToString() + "'");
namelist[i] = dt2.Rows[0][1].ToString() + "(" + dt2.Rows[0][0].ToString() + ")";
}

DataList1.DataSource = namelist;
DataList1.DataBind();
}





namelist作为一维string数组创建出来, 让namelist接受在for循环中的赋值后,
再指定为前台某数据绑定控件(现在用的是DataList1)的数据源后,在前台具体应用什么表达式展示数据?
...全文
227 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
luj_1768 2021-02-06
  • 打赏
  • 举报
回复
通常,rows[0][xxxx],存放的是数据表的表头,应该不是数据。 也不太想得好你用的数据库是怎么设计的。 使用data[0]作为一维数组data的集成数据,也是一种做法。但是一般只有底级库(原始数据、微观数据)使用这种设计。 也就是说,一般的数据库可能只把你想到的rows[0][xxxx]作为单一数据项。 所以你需要查看一下你使用的数据库信息和使用说明。
luj_1768 2021-02-06
  • 打赏
  • 举报
回复
你目前的问题是什么呢?从数据格式和内容来说,选用Datalist控件应该是不会出任何疑问的,你组织的数据源就是个一维string数组,数据匹配是最简单的和不会出任何问题的。你应该不是想查询Datalist控件的用法吧? 从你的情况分析,如果出现问题,一定是数据源没有准备好。那么你查看一下前台收到的数据源的实际情况应该是非常简单的吧?
GemTony 2021-02-02
  • 打赏
  • 举报
回复

dt1.Rows[0][0].toString()=="E001 E002 E003"   //数据格式是varchar(800)

boylist= dt1.Rows[0][0].ToString().Split(' ');     //boylist=={"E001","E002","E003"}
namelist的赋值部分右边的是通过for循环让boylist数组每一个ID传入SQL查询语句,通过每一个ID查询出男员工编号、姓名后, 再让namelist接收值:男员工姓名在前、编号在后,注意这里这是查询结果的数据列前后换了位置,并不是下标没换。
luj_1768 2021-02-02
  • 打赏
  • 举报
回复
好像确实问题不小:设定数据源部分,虽然不需要非常严谨也能运行,但是namelist的赋值部分好像右边的下标一直没换;boylist赋值部分好像也有些疑问,dt1[0][0]可否查看一下数据内容与格式?搞复杂了,直接使用for each循环赋值可能更简单一些;使用datalist控件应该是对的,只是数据源可能没有准备好。
GemTony 2021-02-01
  • 打赏
  • 举报
回复
引用 1 楼 正怒月神 的回复:
https://blog.csdn.net/iteye_16215/article/details/81310918
我是把一维string数组赋值后指定为Datalist的数据源,与您提供文章中的情况不一样,string[]数组没有DataItem,也能像文章中那样用Eval取值? 一维string数组的元素值如同: namelist={ "Mike(E001) ","Jack(E002)","Jim(E003)" } ; 在前台Datalist的控件中如何展示数据值?或者换一种数据绑定控件?
GemTony 2021-02-01
  • 打赏
  • 举报
回复
我是把一维string数组赋值后指定为Datalist的数据源,与您提供文章中的情况不一样,string[]数组没有DataItem,也能像文章中那样用Eval取值? 一维string数组的元素值如同: namelist={ "Mike(E001) ","Jack(E002)","Jim(E003)" } ; 在前台Datalist的控件中如何展示数据值?或者换一种数据绑定控件?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧