Newer
Older
NoteApi / Program.cs
@fabre fabre on 28 Jan 799 bytes SensorReadings
using Microsoft.AspNetCore.OData;
using Microsoft.OData.ModelBuilder;
using Microsoft.EntityFrameworkCore;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddDbContext<AppDbContext>(opt =>
    opt.UseSqlServer(builder.Configuration.GetConnectionString("Default"))
);

var odataBuilder = new ODataConventionModelBuilder();
odataBuilder.EntitySet<HololiveSchedule>("HololiveSchedule");
odataBuilder.EntitySet<PixivImage>("PixivImages");
odataBuilder.EntitySet<SensorReading>("SensorReadings")
    .EntityType
    .HasKey(x => new { x.Ts, x.Location });

builder.Services.AddControllers()
    .AddOData(opt =>
        opt.EnableQueryFeatures()
           .AddRouteComponents("odata", odataBuilder.GetEdmModel())
    );

var app = builder.Build();

app.MapControllers();
app.Run();