これをEntity Frameworkで作成したいと思います。親のフィールドと最新の子レコードのフィールドを含む新しいオブジェクトのリスト。SQL を相関サブクエリとして記述します。
SELECT p.PolicyNumber, p.HomeState, pt.RevisionDate, pt.TranStatus
FROM dbo.Policy p
JOIN dbo.PolicyTran pt ON p.Id = pt.Policy_Id
AND pt.RevisionDate = (
SELECT MAX(mpt.RevisionDate)
FROM dbo.PolicyTran mpt
WHERE p.Id = pt.Policy_Id
)
WHERE p.HomeState = 'NY'
Policy のコンテキストには、トランザクションのリスト (PolicyTran) へのナビゲーションがあります。
var query = context.Policies.Include(t => t.PolicyTransactions);
何を試しても、Linq が正しくないか、SQL が正しくありません。専門家を呼ぶ時が来ました。