Skip to content

Instantly share code, notes, and snippets.

View dkreider's full-sized avatar
🤠
Breaking my keyboard...

Daniel Kreider dkreider

🤠
Breaking my keyboard...
View GitHub Profile
using Microsoft.AspNetCore.Mvc;
namespace BaseController.Controllers
{
[ApiController]
[Route("api/weather-forecast")]
public class WeatherForecastController : BaseController<WeatherForecast>
{
public WeatherForecastController(BaseControllerDBContext context) : base(context)
{
@dkreider
dkreider / BaseController.cs
Created May 22, 2021 15:04
Learn how to create a base controller in ASP.NET core here - https://danielk.tech
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
namespace BaseController.Controllers
{
[ApiController]
using System;
namespace BaseController
{
public class WeatherForecast : BaseModel
{
public DateTime Date { get; set; }
public int TemperatureC { get; set; }
using System;
namespace BaseController
{
public class BaseModel
{
public Guid Id { get; set; }
}
}
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<BaseControllerDBContext>(options => options.UseInMemoryDatabase("BaseController"));
services.AddControllers();
}
using Microsoft.EntityFrameworkCore;
namespace BaseController
{
public class BaseControllerDBContext : DbContext
{
public DbSet<WeatherForecast> WeatherForecasts { get; set; }
public BaseControllerDBContext(DbContextOptions<BaseControllerDBContext> options) : base(options)
{
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using GenericRepositoryDemo.Entities;
using GenericRepositoryDemo.Repositories;
using Microsoft.AspNetCore.Mvc;
namespace GenericRepositoryDemo.Controllers
{
[ApiController]
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using GenericRepositoryDemo.Entities;
using Microsoft.EntityFrameworkCore;
namespace GenericRepositoryDemo.Repositories
{
public class GenericRepository<Entity> where Entity : BaseModel
{
using System.Collections.Generic;
using GenericRepositoryDemo.Entities;
using Microsoft.EntityFrameworkCore;
namespace GenericRepositoryDemo
{
public class BloggingContext : DbContext
{
public DbSet<Blog> Blogs { get; set; }
public DbSet<Post> Posts { get; set; }
namespace GenericRepositoryDemo.Entities
{
public class Post : BaseModel
{
public string Title { get; set; }
public string Content { get; set; }
public int BlogId { get; set; }
public Blog Blog { get; set; }
}