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

LINQ3: Support pipeline in $lookup translations (Join/GroupJoin)

    • Type: Icon: Improvement Improvement
    • Resolution: Duplicate
    • Priority: Icon: Unknown Unknown
    • None
    • Affects Version/s: 2.20.0
    • Component/s: LINQ3
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      I'm trying to do a GroupJoin between two aggregation queries.

      i.e. Collection1.OfType<TypeA>().GroupJoin(Collection2.OfType<TypeB>(), ...)

      Trying to do this fails currently in ExtensionMethods.GetCollectionInfo as the inner expression is not considered constant.

      $lookup looks to support this via the 'pipeline' parameter however there doesn't look to be any way to supply this through LINQ Join/GroupJoin translations.

       

      I'm not sure if it's possible to add this support, I guess it would need to separate out the collection (constant expression) from the pipeline and forward the pipeline as the lookup parameter?

       

      Thanks

            Assignee:
            robert@mongodb.com Robert Stam
            Reporter:
            alistair.steele@trapdoorlabs.uk Alistair Steele
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: