这让我疯了!
我有一个小程序从mysql数据库获取数据。 表 tbl_credent 中有两列包含加密数据,称为 U_Password 和 U_SecQu 。
我希望在加载到我的数据集时解密数据。
以下是按原样加载数据的函数:
private void setBindSource()
{
string cmdString = "SELECT * FROM myDatabase.tbl_credent;";
MySqlDataAdapter da = new MySqlDataAdapter(cmdString, _connection);
//_connection is globally defined
ds = new System.Data.DataSet();
da.Fill(ds);
_BindSource = new System.Windows.Forms.BindingSource();
_BindSource.DataSource = ds.Tables[0];
}
我有一个解密数据的功能:
public string decryptData(string encryptedData, string password)
这工作正常,但我现在不知道如何使用上述函数。
答案 0 :(得分:2)
你必须逐个解密每个字符串:
将此代码放在da.Fill(ds);
foreach (DataRow row in ds.Tables[0].Rows)
{
row["U_Password"] = decryptData(row["U_Password"] as string, "password");
row["U_SecQu"] = decryptData(row["U_SecQu"] as string, "password");
}