感谢您的任何见解,您可以提供帮助!Linqdatasource过滤器后数据库检索
很简单,我打电话了一套使用LinqToSql从数据库中的联系人的。其中两列“FirstName”和“LastName”被加密。
我解密他们在飞行中如您在包含代码中看到。不过,我也想根据LastName进行过滤。问题是如果我在声明中进行比较,则会将加密值与文本值进行比较。
我需要以某种方式获得所得到的数据为我的GridView控件,那么事实后使其过滤,不是基于数据库值了,但与我已经有数据(和解密数据)。
想法??谢谢!
protected void ContactsLDS_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
DatabaseDataContext db = new DatabaseDataContext();
MyAES aes = new MyAES();
var v1 = from s in db.Contacts
select new Contact()
{
ContactId = s.ContactId,
FirstName = (s.FirstName == null ? "" : aes.DecryptString(s.FirstName)),
LastName = (s.LastName == null ? "" : aes.DecryptString(s.LastName)),
};
e.Result = v1;
}
可以扭转的东西,加密您要比较的,而不是解密,然后比较,以纯文本一个名字?像。凡(W => w.LastName == aes.EncryptString(LastNameToTestFor); – nycdan
啊 - 善于思考,除了那么我需要做精确匹配搜索,我需要能够使用“开始,用”,根据名字的第一个字母来过滤,等等,谢谢你的想法! – localman