asp.net core - mvc - Cómo registrar OData con ASP.NET 5
render partial asp net core (1)
Tengo una aplicación ASP.NET 5 y me gustaría utilizar OData v4 con ella.
Esto es lo que he intentado:
1. Importé los siguientes paquetes nuget:
"Microsoft.AspNet.WebApi": "5.2.3",
"Microsoft.AspNet.OData": "5.7.0",
"Microsoft.AspNet.Hosting": "1.0.0-rc1-final"
2.Calificado esto en el método Startup.Configure
GlobalConfiguration.Configure(ConfigOData);
3. Y finalmente esta es la configuración de OData
private static void ConfigOData(HttpConfiguration config)
{
ODataConventionModelBuilder builder = new ODataConventionModelBuilder();
var EDM = builder.GetEdmModel();
//OData v4.0
config.MapODataServiceRoute("odata", "odata", EDM,
new DefaultODataPathHandler(),
conventions,
new DefaultODataBatchHandler(GlobalConfiguration.DefaultServer));
}
Ahora las llamadas de OData están siendo procesadas por la configuración de enrutamiento de la MVC (muy probablemente porque no registré OData con ASP.NET 5 correctamente).
Alguien me puede ayudar con esto por favor ?
Aquí es cómo podemos configurarlo con ASP.NET Core RC2 OData.
namespace ODataSample
{
using Microsoft.AspNetCore.OData.Extensions;
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
using ODataSample.Models;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.AddOData<ISampleService>();
}
public void Configure(IApplicationBuilder app)
{
app.UseOData("odata");
app.UseMvc();
}
}
}
Aquí es cómo puedes probarlo tú mismo. Deberá tener instalado .NET Core SDK.
git clone [email protected]:bigfont/WebApi.git
cd WebApi/vNext/src/Microsoft.AspNetCore.OData
dotnet restore
cd ../../samples/ODataSample.BigFont/
dotnet restore
dotnet run
Este es el resultado en http://localhost:5000/odata
Campo de golf