5

F#で複合C#句を使用してこのC#joinを記述する方法:

join k in DataContext.Catalogs on
   new { id = o.IDENT, v = o.VZ } equals
   new { id = k.IDENT, v = k.VZ }

これはよく似た質問です。F#3.0クエリ内の複数列によるgroupbyまだ答えられていません。しかし、私はそれをFSharpで書くことが容易ではないとは思えません。

ありがとう

1 답변


9

必要なキーフィールドを含むタプルを使用してください。

query {
  for o in DataContext.OTable do
  join k in DataContext.Catalogs on
   ((o.IDENT, o.VZ) = (k.IDENT, k.VZ))
  select (o.IDENT, k.VZ)
}

C#の場合のように、F#の名前付きフィールドで匿名型を作成することはできません。タプルはおそらく最も近いそして最も慣用的な翻訳です。 Tomasの答えを見るここに

リンクされた質問


関連する質問

最近の質問