多くのクエリで使用する必要がある LINQ コードのスニペットがあります。
let catchmentId = Convert.ToInt32(
phy.PhysicalProperty_binData.Substring(offset + 3, 1) +
phy.PhysicalProperty_binData.Substring(offset + 2, 1) +
phy.PhysicalProperty_binData.Substring(offset + 1, 1) +
phy.PhysicalProperty_binData.Substring(offset, 1))
これは SQL にうまく変換されます (そして、私の特定のニーズに対してはパフォーマンスが向上します) が、クエリの見栄えが悪くなります。これを冗長にする方法はありますか?おそらく、 Expression> を返す拡張メソッドですか? クライアント側にデータを取得したくないことに注意してください (サーバー上で SQL として実行します)。これにより、少し複雑になります。例えば:
let catchmentId = phy.PhysicalProperty_binData.AnExtensionMethodHere<int>(offset)
これを行う拡張メソッドを作成しようとしましたが、プロバイダーは単にその呼び出しを無視するか、その呼び出しを SQL に変換する方法がわからないことを示す例外をスローします。SQL ジェネレーターを何らかの方法で拡張して、これを実行したり、同じ SQL を生成する方法で何かを提供したりできますか?
前もって感謝します!