Uploaded image for project: 'C# Driver'
  1. C# Driver
  2. CSHARP-3479

LINQ3: Contains should use $elemMatch

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 2.14.0
    • Affects Version/s: None
    • Component/s: LINQ3
    • None

      Translate:

      document.A.Contains(c) 

      to:

      { A : { $elemMatch : { $eq : c } } } 

      instead of:

      { A : c } 

      To prevent certain transformations that apply to `{ A : c }` (but not for this `Contains` case) from being applied.

      During final rendering (when no further transformations to the AST will occur) the first from can be rendered as the second form.

            Assignee:
            robert@mongodb.com Robert Stam
            Reporter:
            robert@mongodb.com Robert Stam
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: