複数のパラメーターを使用してlinq式を作成する方法

Pax Bisonica

複数のパラメーターを渡す再利用可能なlinq式を作成しようとしています。

private System.Linq.Expressions.Expression<Func<FeeDetail, FeeDetail, bool>> IsPrevFeeDetail
   {
       get
       {
           return (feeLevelDetail, currentFeeLevelDetail) =>
           feeLevelDetail.ToDt < currentFeeLevelDetail.FromDt);
       }
   }

しかし、私が見た式のすべての例は、1つのパラメーター(クエリ対象のエンティティタイプ)のみを取ります。

箱から出してこれを行う方法はありますか?

マカデン

私の答えの時のあなたの質問は、単に複数のパラメータを持つ式が可能かどうかを尋ねます。それらは使用することができます、そしてそうです。

.Joinそして.GroupJoin最後のパラメータ、参加して返す単一のエンティティを単一の型を返すの各側面から導出タイプを取り式パラメータとして有し、両方。

tableA.Join(tableB, e => e.Id, e => e.TableAId, (a, b) => new {
    IsPrevFee = a.ToDt < b.FromDt,
    AEntry = a,
    BEntry = b
}).Where(e => e.IsPrevFee);

ただし、質問の例から判断すると、で使用したいようですWhereLinqクエリ関数のいずれかが、単一の型のコレクションを戻り値として提供するため、これは機能しません。上で見たように、私は基本的に2つのエンティティの結合を単一のタイプの出力に変換しました。匿名型を使用しましたが、これは具体的な型にすることもでき、結合に再利用可能な式を入力すると、単一入力の式を渡すことができることに注意してください。Where句。

コメントの編集:

Expression<Func<MyEntity, bool>>別の引数を閉じることで、を作成できるはずです。私はその場でこれを行っているので、些細な構文エラーは無視してください。ただし、例は次のようになります。

Expression<Func<MyEntity, bool>> GetMyWhereClause(int statusId)
{
    return myEntity => myEntity.StatusId == statusId;
}

使用法:

var MyWhereClause = GetMyWhereClause(5);
var result = db.MyEntities.Where(MyWhereClause);

確かではありませんが、LINQ-to-SQLが結果の式を解決できない可能性があるため、これが非プリミティブに対して機能するとは思われません。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

linq 式をパラメーターとして作成する

分類Dev

複数のパラメータを使用してYiiURLルートを作成する

分類Dev

ループから複数のパラメーターを使用してsqlalchemy削除クエリを作成する方法

分類Dev

express.jsで複数のパラメーターを使用してAPIを作成する方法

分類Dev

VisualStudioでMartenを使用してLinqを使用して複数のパラメーターをクエリする

分類Dev

MultipartUploadRequestを使用して複数のパラメーターを送信する方法

分類Dev

数式を使用してExcelで数値のパターンを作成する方法

分類Dev

Excel:1つの関数の結果を数式のパラメーター/範囲として使用する方法

分類Dev

routeLinkで複数のパラメータを作成する方法

分類Dev

複数のパラメーターを使用して関数をグラフ化する方法

分類Dev

web-apiを使用して複数のパラメーターを渡す方法

分類Dev

PHPのPostgreSQLDBで複数のパラメーターを使用してプリペアドステートメントを作成する方法

分類Dev

Javascriptを使用して複数のパラメータを持つ配列から重複を削除する方法

分類Dev

複数のパラメーターを渡すが、uiRouterを使用して1つだけを表示する方法は?

分類Dev

EJSを使用して関数で複数のパラメーターを送信する方法

分類Dev

複数のパラメーター/オプションを使用してbash関数を完了する方法は?

分類Dev

複数の文字列を含むパラメータとして文字列を作成する方法

分類Dev

カンマ区切りの複数のパラメータを使用してRESTURLを作成する

分類Dev

代入式を使用してSetterメソッドに複数のパラメーターを渡す

分類Dev

フラッターで複数の色を使用してColorTweenアニメーションを作成する方法

分類Dev

GraphQL Ruby:複数のパラメーターを使用してDRYミューテーションを作成する方法は?

分類Dev

複数のパラメータリストを使用してケースクラスの作成を明確にする方法は?

分類Dev

動的な数のパラメーターを使用してEFCoreで生のSQLクエリを作成する方法

分類Dev

複雑なWordPressOrderbyパラメーター:meta_value_numを使用して複数のorderbyパラメーターでクエリを実行する方法は?

分類Dev

パラメータを使用してAttributeSyntaxを作成する方法

分類Dev

FirebasegetKeyパラメータを使用してCardviewを作成する方法

分類Dev

Action <T、T、... n>の複数のパラメーターを使用してタスクを作成します

分類Dev

golangアプリケーションで複数のJSONパラメーターを使用してSQLクエリを作成する方法

分類Dev

Spring-MVCで複数のパラメーターを使用してリクエストを処理する方法

Related 関連記事

  1. 1

    linq 式をパラメーターとして作成する

  2. 2

    複数のパラメータを使用してYiiURLルートを作成する

  3. 3

    ループから複数のパラメーターを使用してsqlalchemy削除クエリを作成する方法

  4. 4

    express.jsで複数のパラメーターを使用してAPIを作成する方法

  5. 5

    VisualStudioでMartenを使用してLinqを使用して複数のパラメーターをクエリする

  6. 6

    MultipartUploadRequestを使用して複数のパラメーターを送信する方法

  7. 7

    数式を使用してExcelで数値のパターンを作成する方法

  8. 8

    Excel:1つの関数の結果を数式のパラメーター/範囲として使用する方法

  9. 9

    routeLinkで複数のパラメータを作成する方法

  10. 10

    複数のパラメーターを使用して関数をグラフ化する方法

  11. 11

    web-apiを使用して複数のパラメーターを渡す方法

  12. 12

    PHPのPostgreSQLDBで複数のパラメーターを使用してプリペアドステートメントを作成する方法

  13. 13

    Javascriptを使用して複数のパラメータを持つ配列から重複を削除する方法

  14. 14

    複数のパラメーターを渡すが、uiRouterを使用して1つだけを表示する方法は?

  15. 15

    EJSを使用して関数で複数のパラメーターを送信する方法

  16. 16

    複数のパラメーター/オプションを使用してbash関数を完了する方法は?

  17. 17

    複数の文字列を含むパラメータとして文字列を作成する方法

  18. 18

    カンマ区切りの複数のパラメータを使用してRESTURLを作成する

  19. 19

    代入式を使用してSetterメソッドに複数のパラメーターを渡す

  20. 20

    フラッターで複数の色を使用してColorTweenアニメーションを作成する方法

  21. 21

    GraphQL Ruby:複数のパラメーターを使用してDRYミューテーションを作成する方法は?

  22. 22

    複数のパラメータリストを使用してケースクラスの作成を明確にする方法は?

  23. 23

    動的な数のパラメーターを使用してEFCoreで生のSQLクエリを作成する方法

  24. 24

    複雑なWordPressOrderbyパラメーター:meta_value_numを使用して複数のorderbyパラメーターでクエリを実行する方法は?

  25. 25

    パラメータを使用してAttributeSyntaxを作成する方法

  26. 26

    FirebasegetKeyパラメータを使用してCardviewを作成する方法

  27. 27

    Action <T、T、... n>の複数のパラメーターを使用してタスクを作成します

  28. 28

    golangアプリケーションで複数のJSONパラメーターを使用してSQLクエリを作成する方法

  29. 29

    Spring-MVCで複数のパラメーターを使用してリクエストを処理する方法

ホットタグ

アーカイブ