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

GeoJSON LINQ-friendly operations

    • Type: Icon: New Feature New Feature
    • Resolution: Unresolved
    • Priority: Icon: Unknown Unknown
    • None
    • Affects Version/s: None
    • Component/s: Linq
    • None
    • None
    • Dotnet Drivers
    • 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?
    • None
    • None
    • None
    • None
    • None
    • None

      While the C# Driver supports Geospacial types (GeoJSON) if you wish to perform any of the operations you must use the Filters API for within, near or intersects.

      It would be great if we had simple methods that could be used in LINQ operations without using the filters API, e.g.

      postcodes.Where(r => Mql.Near(r.GeoLocation, origin, 10, true)) 

      This would be the first step in getting this working for our EF Core Provider as requested on the community forums at https://www.mongodb.com/community/forums/t/ef-provider-support-for-geojson-objects/311420

      There would likely be three methods stubs for $near, $geoWithin and $geoIntersects on the static Mql class we currently use for field etc. with signatures to match the query parameters.

            Assignee:
            damien.guard@mongodb.com Damien Guard
            Reporter:
            damien.guard@mongodb.com Damien Guard
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              None
              None
              None
              None