私はあなたが推測しているように、貴重なコミュニティにお尋ねする質問が1つあります。そう。 NHibernateは、テーブル値のSQL関数の評価に基づくクエリの結果をフィルタリングします。 NHibernateはによって生成された 可能なSQLクエリは次のようになります。NHibernateでテーブル値関数をクエリソースとして使用できますか?
SELECT
[whatever]
FROM
[whatever]
INNER JOIN dbo.FnMyTableValuedFunction() as MyAlias ON
[whatever].FirstDesiredKey = MyAlias.FirstDesiredKey
AND
[whatever].SecondDesiredKey = MyAlias.SecondDesiredKey
それとも、それはこのように書くことができます。
SELECT
[whatever]
FROM
[whatever]
WHERE
EXISTS(
SELECT
1
FROM
dbo.FnMyTableValuedFunction() AS MyAlias
WHERE
[whatever].FirstDesiredKey = MyAlias.FirstDesiredKey
AND
[whatever].SecondDesiredKey = MyAlias.SecondDesiredKey
)
このようなクエリを、私は基準APIを使用して生成します。 私が知る限り、NHibernateに参加する方法とその方法を伝える方法はありません。したがって、存在するかもしれない1つの解決法が第2の解決策である。
残念ながら、相関サブクエリのクエリソースとしてテーブル値関数を使用する方法を知ることはできませんでした。あなたはそれで私を助けることができますか?