我有一些方法,如:
public static string ToOtherFormat (this string inp)
{
// some code to change inp
return inp;
}
在我的选择中我希望有这样的代码:
var DetailMembers = db.TB_Members
.Where(x=> x.FName == obj.ToOtherFormat())
.Select( x=> new { name = (x.FName.ToOtherFormat() + " " + x.LName) , x.ActCode });
我尝试只是有错误。有可能吗?
谢谢!
我在简单转换为整数时收到此错误
LINQ to Entities无法识别方法'Int32 ToInt32(System.String)'方法,并且此方法无法转换为商店表达式。
使用此代码
.Where(x => x.MemberID == Convert.ToInt32(Hmemid.Hash_two_Decrypt())
答案 0 :(得分:1)
看起来您正在查询数据库。您当前的查询将被转换为SQL查询,因为SQL无法识别您的函数,这就是您收到错误的原因。
您可以使用不带该函数的查询从表中获取数据,然后在结果集上进行格式化。
答案 1 :(得分:0)
我在使用.AsEnumerable()
方法上找到了它,如:
var DetailMembers = db.TB_Members.AsEnumerable()
.Where(x=> x.FName == obj.ToOtherFormat())
.Select( x=> new { name = (x.FName.ToOtherFormat() + " " + x.LName) , x.ActCode });