ADCCure.Azure.Documents.ODataCore.Sql
3.0.2
dotnet add package ADCCure.Azure.Documents.ODataCore.Sql --version 3.0.2
NuGet\Install-Package ADCCure.Azure.Documents.ODataCore.Sql -Version 3.0.2
<PackageReference Include="ADCCure.Azure.Documents.ODataCore.Sql" Version="3.0.2" />
paket add ADCCure.Azure.Documents.ODataCore.Sql --version 3.0.2
#r "nuget: ADCCure.Azure.Documents.ODataCore.Sql, 3.0.2"
// Install ADCCure.Azure.Documents.ODataCore.Sql as a Cake Addin
#addin nuget:?package=ADCCure.Azure.Documents.ODataCore.Sql&version=3.0.2
// Install ADCCure.Azure.Documents.ODataCore.Sql as a Cake Tool
#tool nuget:?package=ADCCure.Azure.Documents.ODataCore.Sql&version=3.0.2
Currently it supports below query mappings:
primitive:
field => c.field
parent/child => c.parent.child
Namespace.EnumType'enumVal' => 'enumVal'
queries:
$select => SELECT
$filter => WHERE
$top => TOP
$orderby => ORDER BY
functions:
Items/any(a: a/field op 'value') => SELECT value c FROM c JOIN a IN c.Items WHERE a.field op 'value'
contains(field,'value') => CONTAINS(c.field,'value')
startswith(field,'value') => STARTSWITH(c.field,'value')
endswith(field,'value') => ENDSWITH(c.field,'value')
toupper(field) => UPPER(c.field)
tolower(field) => LOWER(c.field)
length(field) => LENGTH(c.field)
indexof(field,'value') => INDEX_OF(c.field,'value')
substring(field,idx1,idx2) => SUBSTRING(c.field,idx1,idx2)
trim(field) => LTRIM(RTRIM(c.englishName))
concat(field,'value') => CONCAT(c.englishName,'value')
geography'POLYGON((31.8 -5, 32 -5, 32 -4.7, 31.8 -4.7, 31.8 -5))
=> ST_INTERSECTS(c.area,{\"type\":\"Polygon\",\"coordinates\":[[[31.8,-5.0],[32.0,-5.0],[32.0,-4.7],[31.8,-4.7],[31.8,-5.0]]]})
geography'POINT(31.9 -4.8)') lt 100 => ST_DISTANCE(c.location,{\"type\":\"Point\",\"coordinates\":[31.9,-4.8]}) < 100
$count=true&$filter=englishName eq 'Microsoft' => VALUE COUNT(1) FROM c WHERE c.englishName = 'Microsoft'
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 is compatible. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
-
.NETCoreApp 2.0
- GeoJSON.Net (>= 1.1.64)
- Microsoft.AspNetCore.OData (>= 7.0.0-beta2)
- Microsoft.Azure.DocumentDB.Core (>= 1.8.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
3.0 .NET Core beta.
2.1.12 Fix Guid translation with quotes encapsulated
2.1.11 Resolve nullreference exception on empty $filter
2.1.5 Improved Enum parsing
2.1.4 Improved dependency versions
2.1.3 Added support for any. Note, 'all' not supported.
2.0.2 Added support for functions: length(), indexof(), substring(), trim(), concat()
2.0.1 Added support for functions: contains(), startswith(), endswith(), toupper() and tolower()
2.0.0 Breaking changes: Simplified usage with newly introuduced class ODataToSqlTranslator
1.0.0 Initial release