3

これは機能しませんが、私が達成しようとしていることのアイデアを提供する必要があります:

public static IEnumerable<T> MyMethod<T>(this IEnumerable<T> entity, 
                               string param, string SomeProp)
{
    return entity.Where(l =>
    System.Data.Objects.SqlClient.SqlFunctions.PatIndex(param, l.SomeProp) > 0);
}

パラメータ全体をWhere()関数としてに渡す必要がありますMyMethodか?

4

1 に答える 1

3

更新を確認すると、次のような繰り返しを避けることができます。

public static IEnumerable<T> MyMethod<T>(this IEnumerable<T> entity, 
                               string param, Func<T, string> selector)
{
    return entity.Where(l =>
    System.Data.Objects.SqlClient.SqlFunctions.PatIndex(param, selector(l)) > 0);
}
于 2013-06-14T14:29:59.307 に答える