public void ODataBuilder_Should_ReturnBasicEntityKeyString() { var key = Guid.NewGuid(); var actual = new ODataBuilder <Relation, Guid>(nameof(Relation), key).Build(); actual.Should().Be($"relation({key})"); }
public void ODataBuilder_Should_ReturnBasicEntityString_WithOrder() { var actual = new ODataBuilder <Relation, Guid>(nameof(Relation)) .SetOrder(nameof(Relation.Name)) .Build(); actual.Should().Be("relation?$orderby=name"); }
public void Configure(IApplicationBuilder app, IHostingEnvironment env, IServiceProvider serviceProvider) { if (env.IsDevelopment()) { app.UseDeveloperExceptionPage(); app.UseDirectoryBrowser(new DirectoryBrowserOptions { FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "ui5")), RequestPath = "/ui5" }); } //DefaultFilesOptions options = new DefaultFilesOptions(); //options.DefaultFileNames.Clear(); //options.DefaultFileNames.Add("Index.html"); //app.UseDefaultFiles(options); app.UseHsts(); app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseCookiePolicy(); app.UseAuthentication(); var provider = new FileExtensionContentTypeProvider(); provider.Mappings[".properties"] = "application/text"; app.UseStaticFiles(new StaticFileOptions { FileProvider = new PhysicalFileProvider( Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "ui5")), RequestPath = "/ui5", ContentTypeProvider = provider }); app.UseCors("UI5Policy"); app.Use((context, next) => { context.Response.Headers["OData-Version"] = "4.0"; return(next.Invoke()); }); app.UseODataBatching(); app.UseMvc(routes => { routes.Select().Expand().Filter().OrderBy().MaxTop(null).Count(); routes.MapODataServiceRoute("odata", "odata", ODataBuilder.GetModel(), new DefaultODataBatchHandler()); routes.MapRoute(name: "default", template: "{controller=Home}/{action=Index}/{id?}"); routes.EnableDependencyInjection(); }); Helper.Methods.CreateRolesAsync(serviceProvider).Wait(); }
public void ODataBuilder_Should_ReturnBasicEntityString_WithOrderDescendingAndSkip() { var actual = new ODataBuilder <Relation, Guid>(nameof(Relation)) .SetOrder(nameof(Relation.Name)) .SetDescending(true) .SetSkip(2) .Build(); actual.Should().Be("relation?$orderby=name desc&$skip=2"); }
public void ODataBuilder_Should_ReturnFilteredQueryWithExpand() { var filter = new ODataFilterSelector <Relation, string>(x => x.Name, Enums.FilterOperator.Equal, "Johnson"); var actual = new ODataBuilder <Relation, Guid>(nameof(Relation)) .SetFilter(new ODataFilters(filter)) .Expand(new ODataBuilder <Relation, Guid>(nameof(Order))) .Build(); actual.Should().Be($"relation?$filter=name eq 'Johnson'&$expand=order"); }
public void ODataBuilder_Should_ReturnWithBasicFilter() { var key = Guid.NewGuid(); var filter = new ODataFilterSelector <Relation, string>(x => x.Name, Enums.FilterOperator.Equal, "Johnson"); var expand = new ODataBuilder <Relation, int>(nameof(Order)); expand.SetFilter(new ODataFilters(filter)); var actual = new ODataBuilder <Relation, Guid>(nameof(Relation), key) .Expand(expand) .Build(); actual.Should().Be($"relation({key})?$expand=order($filter=name eq 'Johnson')"); }
public void ODataBuilder_Should_ReturnFilteredQueryWithExpand_With_FilterAndOrder() { var filter = new ODataFilterSelector <Relation, string>(x => x.Name, Enums.FilterOperator.Equal, "Johnson"); var expand = new ODataBuilder <Relation, Guid>(nameof(Order)); expand.SetFilter(filter); expand.SetOrder <Order, int>(x => x.OrderNumber); var actual = new ODataBuilder <Relation, Guid>(nameof(Relation)) .SetFilter(new ODataFilters(filter)) .Expand(expand) .Build(); actual.Should().Be("relation?$filter=name eq 'Johnson'&$expand=order($filter=name eq 'Johnson';$orderby=ordernumber)"); }
static void GlobalConfigurationManager_OnConfiguration_Config_OData(object sender, EventArgs e) { HttpConfiguration config = (HttpConfiguration)sender; //config.EnableQuerySupport(); config.MapODataServiceRoute(routeName: "OData", routePrefix: "odata", model: ODataBuilder.GetEdmModel()); }
public void ODataBuilder_Should_ReturnBasicEntityString() { var actual = new ODataBuilder <Relation, Guid>(nameof(Relation)).Build(); actual.Should().Be("relation"); }