您的位置:首页 > 其它

【类型转换】list集合之再认识

2016-03-20 16:14 253 查看
        这一周由于一直没解决list集合到底好在了哪里,故而机房重构的D层和B层一直不感谢下去,说到底还是自己太懒,不愿“费劲”,就想着图省事。

        关键图省事吧,还偏偏考虑的到很多,一会试试这个方法,一会换换那个参数什么的,没有一定的规格,老是根据自己的意愿随意编写,到最后就算写着备注都不知道什么情况了,我也是佩服自己啊!

       好了,回归正题。这周六我又就这个问题“思考”很久,然后一直没有解决,最后还是去问了同学。才发现,一直我的集合没有排上用场,是因为我将集合当作了单个实体,反过来又将单个实体当作了集合,故而就定义了一个实体集合,将U层数据传给外观层的时候用的集合,接受返回信息的时候也用的集合,最后我也不知道我的集合使用来干什么的了。

Dim list As New List(Of Model.Card_Info) '实例化实体集合退卡
Dim Facade_BackCard As New Facade.Facade_BackCard '实例化外观退卡
Dim message As String = "" '用于接收B层处理的可能存在的判断分析

'验证卡号输入是否为空
If txtCard.Text.Trim() = "" Then
MessageBox.Show("请输入需要退卡的卡号,然后再查看")
Exit Sub
End If

'如果卡号不为空,则进行验证操作
Try
list.card = txtCard.Text.Trim() '给实体BackCard赋值
list = Facade_BackCard.Inquire(BackCard, message) '将结果返回给实体集合

'message=""证明没有错误提示,则存在数据
If message = "" Then
txtRefund.Text = list(0).balance '将结果中的退卡金额显示出来(即卡号中的余额)
Else
MessageBox.Show(message)
End If
Catch ex As Exception
MsgBox(ex.Message) '提示错误信息
End Try
        还有一点,就是我对于集合的使用不了解,从而导致我没有了解到集合的好处:



        开始的时候,同学告诉我,集合一点就能点出来,而DataTable则只能通过一单元一单元的传参,特别麻烦。并且DataTable如果要修改的的话,需要事先了解数据库表中字段的排列及个数等情况,如果是其他人修改就会泄露数据库内容,故而DataTable不够合理。

dim table as DataTable
table.Rows(0).Item(0)'这样才表示table中第一行第一列的数据,虽然可以用到循环的模式,大师如果将数据传给不同的控件上,并且数据内容再多一些,真就烦死了
        我想也是这么一回事,然后点啊点,点了半天都没有我要的结果,然后就这么耽误了好长时间,到现在我才明白,原来集合也需要有行数参数,通过行参数,可以点出列参数,并非直接点出来列参数的

list(0).Card

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  list集合DataTable