我在DataTable中可以正常工作,但是DataSet没有.Rows属性。所有字段都不会被加密,因此不会全部被解密。我假设这将是某种循环,例如:
For (i = 0, i < DataSet.ColumnIndex [Or something], i++)
但是,我不确定如何执行此操作。
本质上,当我使用基于输入参数的SELECT查询返回数据时,用户输入(名字,姓氏)时,我想解密特定的行。
我目前的使用方式:
Try
For i As Integer = 0 To dt.Rows.Count - 1
dt.Rows(i)("FIRST_NM_TXT") = clsEncrypt.DecryptData(dt.Rows(i)("FIRST_NM_TXT"))
dt.Rows(i)("LAST_NM_TXT") = clsEncrypt.DecryptData(dt.Rows(i)("LAST_NM_TXT"))
Next
Catch ex As Exception
MessageBox.Show("Either the first name or last name did not match. Please check your spelling.")
End Try
我需要一个DataSet的原因是因为我需要运行此解密数据的报告。我已经尝试过使用DataTable,但是没有成功。从研究来看,无论如何,似乎DataSet都是常见的选择。
一个DataSet对象仅仅是一个DataTable对象的集合
您可以通过以下方式访问数据集中的数据表:
原始Dim MyDataTable as DataTable = MyDataSet.Tables(2)
或
姓名 Dim MyDataTable as DataTable = MyDataSet.Tables("Customers")
因此,只要拥有DataSet,就可以使用上述方法之一对数据进行解密
For i As Integer = 0 To MyDataTable.Rows.Count - 1
MyDataTable.Rows(i)("FIRST_NM_TXT") = clsEncrypt.DecryptData(MyDataTable.Rows(i)("FIRST_NM_TXT"))
MyDataTable.Rows(i)("LAST_NM_TXT") = clsEncrypt.DecryptData(MyDataTable.Rows(i)("LAST_NM_TXT"))
Next
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句