データベース内のエンティティを検索するために、次の一般的な方法を実行しようとしています:
// 'atributo' is the name of the attribute to search against
public List<TEntity> buscar<TEntity>(string valor, string atributo) where TEntity : class
{
var matches = from m in db.Set<TEntity>()
where m.GetType().GetProperty(atributo).GetValue(m, null).ToString().Contains(valor)
select m;
return matches.ToList();
}
もちろん、私は例外を取得しています:
LINQ to Entities がメソッド 'System.String ToString()' メソッドを認識しない
また、GetType()、GetProperty()、および GetValue() も無効な LINQ メソッドであることを知っています。
クエリの前に無効なメソッドを使用する方法がわかりません。
何か案は?
ティア