0

重複の可能性:
Linq If ステートメント

Linq を使用してクエリを実行しようとしていますが、where 句の前に If 条件を指定したかったのですが、適切な構文が得られません (可能性があります)、または不可能ですか? 私はたくさん検索しましたが、クエリの前に if と else を使用していますが、クエリ内で If が必要です。次のように可能ですか:

var q = (from mortgageapplication in context.MortgageApplications
         if(mortgageapplication.purpose of loan==7)
         {
              where mortgageapplication.MortgageActive == true && mortgageapplication.MortgageCoordinator==ID
         }

試しているところですが、どこの前に配置できるか教えてください。

4

1 に答える 1

0

このクエリは論理的に同等です。

var loanPurpose = 7;
var coordinatorId = ...;
var query =
    from app in context.MortgageApplications
    where app.PurposeOfLoan != loanPurpose
        || (app.MortgageActive && app.MortgageCoordinator == coordinatorId)
    select application;

ロジックは次のようになります。アクティブであり、指定されたコーディネーターによってのみ確認する必要があります。それ以外の場合は、アプリケーションを入手してください。

于 2013-01-17T05:10:32.093 に答える