ソースがnullでない場合、次のステートメントは正常に機能します。
Filters.Selection
.Select(o => new GetInputItem() { ItemID = o.ItemId })
「Filters.Selection」がnullの場合は爆撃します(明らかに)。ソースがnullの場合はnullを返す、またはソースがnullでない場合は「Select」関数を実行する独自の拡張メソッドを作成する方法はありますか。
たとえば、次のようなものです。
var s = Filters.Selection
.MyOwnSelect(o => new GetInputItem() { ItemID = o.ItemId })
「Filters.Selection」がnullの場合、「s」はnullになります。そうでない場合、「s」には、LINQSelectを使用して評価された「func」が含まれます。
これは、LINQ拡張/カスタマイズについて詳しく知るためだけのものです。
ありがとう。