diff --git a/src/Squidex.Domain.Apps.Entities.MongoDb/Assets/Visitors/FindExtensions.cs b/src/Squidex.Domain.Apps.Entities.MongoDb/Assets/Visitors/FindExtensions.cs index 3d6a94a91..a052f957d 100644 --- a/src/Squidex.Domain.Apps.Entities.MongoDb/Assets/Visitors/FindExtensions.cs +++ b/src/Squidex.Domain.Apps.Entities.MongoDb/Assets/Visitors/FindExtensions.cs @@ -11,7 +11,7 @@ using System.Linq; using MongoDB.Bson; using MongoDB.Driver; using Squidex.Infrastructure; -using Squidex.Infrastructure.MongoDb.OData; +using Squidex.Infrastructure.MongoDb.Queries; using Squidex.Infrastructure.Queries; namespace Squidex.Domain.Apps.Entities.MongoDb.Assets.Visitors diff --git a/src/Squidex.Domain.Apps.Entities.MongoDb/Contents/Visitors/FindExtensions.cs b/src/Squidex.Domain.Apps.Entities.MongoDb/Contents/Visitors/FindExtensions.cs index 2f25d959d..8fe06f208 100644 --- a/src/Squidex.Domain.Apps.Entities.MongoDb/Contents/Visitors/FindExtensions.cs +++ b/src/Squidex.Domain.Apps.Entities.MongoDb/Contents/Visitors/FindExtensions.cs @@ -15,7 +15,7 @@ using NodaTime; using Squidex.Domain.Apps.Core.Contents; using Squidex.Domain.Apps.Core.GenerateEdmSchema; using Squidex.Domain.Apps.Core.Schemas; -using Squidex.Infrastructure.MongoDb.OData; +using Squidex.Infrastructure.MongoDb.Queries; using Squidex.Infrastructure.Queries; namespace Squidex.Domain.Apps.Entities.MongoDb.Contents.Visitors diff --git a/src/Squidex.Domain.Apps.Entities/Assets/Edm/EdmAssetModel.cs b/src/Squidex.Domain.Apps.Entities/Assets/Edm/EdmAssetModel.cs index b6b77f59a..590953cf6 100644 --- a/src/Squidex.Domain.Apps.Entities/Assets/Edm/EdmAssetModel.cs +++ b/src/Squidex.Domain.Apps.Entities/Assets/Edm/EdmAssetModel.cs @@ -18,6 +18,7 @@ namespace Squidex.Domain.Apps.Entities.Assets.Edm { var entityType = new EdmEntityType("Squidex", "Asset"); + entityType.AddStructuralProperty(nameof(IAssetEntity.Id).ToCamelCase(), EdmPrimitiveTypeKind.String); entityType.AddStructuralProperty(nameof(IAssetEntity.Created).ToCamelCase(), EdmPrimitiveTypeKind.DateTimeOffset); entityType.AddStructuralProperty(nameof(IAssetEntity.CreatedBy).ToCamelCase(), EdmPrimitiveTypeKind.String); entityType.AddStructuralProperty(nameof(IAssetEntity.LastModified).ToCamelCase(), EdmPrimitiveTypeKind.DateTimeOffset); diff --git a/src/Squidex.Domain.Apps.Entities/Contents/Edm/EdmModelBuilder.cs b/src/Squidex.Domain.Apps.Entities/Contents/Edm/EdmModelBuilder.cs index 778a29264..f891b4906 100644 --- a/src/Squidex.Domain.Apps.Entities/Contents/Edm/EdmModelBuilder.cs +++ b/src/Squidex.Domain.Apps.Entities/Contents/Edm/EdmModelBuilder.cs @@ -54,6 +54,7 @@ namespace Squidex.Domain.Apps.Entities.Contents.Edm }); var entityType = new EdmEntityType("Squidex", schema.Name); + entityType.AddStructuralProperty(nameof(IContentEntity.Id).ToCamelCase(), EdmPrimitiveTypeKind.String); entityType.AddStructuralProperty(nameof(IContentEntity.Created).ToCamelCase(), EdmPrimitiveTypeKind.DateTimeOffset); entityType.AddStructuralProperty(nameof(IContentEntity.CreatedBy).ToCamelCase(), EdmPrimitiveTypeKind.String); entityType.AddStructuralProperty(nameof(IContentEntity.LastModified).ToCamelCase(), EdmPrimitiveTypeKind.DateTimeOffset); diff --git a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/FilterBuilder.cs b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/FilterBuilder.cs similarity index 95% rename from src/Squidex.Infrastructure.MongoDb/MongoDb/OData/FilterBuilder.cs rename to src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/FilterBuilder.cs index 4b9079327..aaa0e7c55 100644 --- a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/FilterBuilder.cs +++ b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/FilterBuilder.cs @@ -8,7 +8,7 @@ using MongoDB.Driver; using Squidex.Infrastructure.Queries; -namespace Squidex.Infrastructure.MongoDb.OData +namespace Squidex.Infrastructure.MongoDb.Queries { public static class FilterBuilder { diff --git a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/FilterVisitor.cs b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/FilterVisitor.cs similarity index 97% rename from src/Squidex.Infrastructure.MongoDb/MongoDb/OData/FilterVisitor.cs rename to src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/FilterVisitor.cs index c40733f6b..14fe29efa 100644 --- a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/FilterVisitor.cs +++ b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/FilterVisitor.cs @@ -12,7 +12,7 @@ using MongoDB.Bson; using MongoDB.Driver; using Squidex.Infrastructure.Queries; -namespace Squidex.Infrastructure.MongoDb.OData +namespace Squidex.Infrastructure.MongoDb.Queries { public sealed class FilterVisitor : FilterNodeVisitor> { @@ -52,7 +52,7 @@ namespace Squidex.Infrastructure.MongoDb.OData switch (nodeIn.Operator) { case FilterOperator.StartsWith: - return Filter.Regex(propertyName, BuildRegex(nodeIn, s => "$" + s)); + return Filter.Regex(propertyName, BuildRegex(nodeIn, s => "^" + s)); case FilterOperator.Contains: return Filter.Regex(propertyName, BuildRegex(nodeIn, s => s)); case FilterOperator.EndsWith: diff --git a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/LimitExtensions.cs b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/LimitExtensions.cs similarity index 95% rename from src/Squidex.Infrastructure.MongoDb/MongoDb/OData/LimitExtensions.cs rename to src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/LimitExtensions.cs index 9d07bc985..442aaab2e 100644 --- a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/LimitExtensions.cs +++ b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/LimitExtensions.cs @@ -8,7 +8,7 @@ using MongoDB.Driver; using Squidex.Infrastructure.Queries; -namespace Squidex.Infrastructure.MongoDb.OData +namespace Squidex.Infrastructure.MongoDb.Queries { public static class LimitExtensions { diff --git a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/SortBuilder.cs b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/SortBuilder.cs similarity index 96% rename from src/Squidex.Infrastructure.MongoDb/MongoDb/OData/SortBuilder.cs rename to src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/SortBuilder.cs index 8214eb795..caab0a4c3 100644 --- a/src/Squidex.Infrastructure.MongoDb/MongoDb/OData/SortBuilder.cs +++ b/src/Squidex.Infrastructure.MongoDb/MongoDb/Queries/SortBuilder.cs @@ -9,7 +9,7 @@ using System.Collections.Generic; using MongoDB.Driver; using Squidex.Infrastructure.Queries; -namespace Squidex.Infrastructure.MongoDb.OData +namespace Squidex.Infrastructure.MongoDb.Queries { public static class SortBuilder { diff --git a/tests/Squidex.Domain.Apps.Entities.Tests/Assets/MongoDb/MongoDbQueryTests.cs b/tests/Squidex.Domain.Apps.Entities.Tests/Assets/MongoDb/MongoDbQueryTests.cs index 16f639aef..759556d11 100644 --- a/tests/Squidex.Domain.Apps.Entities.Tests/Assets/MongoDb/MongoDbQueryTests.cs +++ b/tests/Squidex.Domain.Apps.Entities.Tests/Assets/MongoDb/MongoDbQueryTests.cs @@ -14,7 +14,7 @@ using Squidex.Domain.Apps.Entities.MongoDb.Assets; using Squidex.Domain.Apps.Entities.MongoDb.Assets.Visitors; using Squidex.Infrastructure; using Squidex.Infrastructure.MongoDb; -using Squidex.Infrastructure.MongoDb.OData; +using Squidex.Infrastructure.MongoDb.Queries; using Squidex.Infrastructure.Queries; using Xunit; using FilterBuilder = Squidex.Infrastructure.Queries.FilterBuilder; diff --git a/tests/Squidex.Domain.Apps.Entities.Tests/Contents/MongoDb/MongoDbQueryTests.cs b/tests/Squidex.Domain.Apps.Entities.Tests/Contents/MongoDb/MongoDbQueryTests.cs index 9f7625de1..9307fab0f 100644 --- a/tests/Squidex.Domain.Apps.Entities.Tests/Contents/MongoDb/MongoDbQueryTests.cs +++ b/tests/Squidex.Domain.Apps.Entities.Tests/Contents/MongoDb/MongoDbQueryTests.cs @@ -21,7 +21,7 @@ using Squidex.Domain.Apps.Entities.MongoDb.Contents.Visitors; using Squidex.Domain.Apps.Entities.Schemas; using Squidex.Infrastructure; using Squidex.Infrastructure.MongoDb; -using Squidex.Infrastructure.MongoDb.OData; +using Squidex.Infrastructure.MongoDb.Queries; using Squidex.Infrastructure.Queries; using Xunit; using FilterBuilder = Squidex.Infrastructure.Queries.FilterBuilder;