diff --git a/Controllers/AutoController.cs b/Controllers/AutoController.cs index 04372bf..17fd2cd 100644 --- a/Controllers/AutoController.cs +++ b/Controllers/AutoController.cs @@ -33,7 +33,7 @@ namespace NejCommon.Controllers /// The request type /// The response type [ApiController] - public abstract partial class AutoController : AutoGetterController + public abstract partial class AutoController : AutoGetterDeleteController where TType : class where TGetAllResponse : class, IAutomappedAttribute, new() where TCreateRequest : class, IAutomappedAttribute, new() @@ -87,21 +87,6 @@ namespace NejCommon.Controllers return await db.ApiSaveChangesAsyncCreate(providers, entity, true, (TCreateResponse)GetResponseType(RequestedResponseType.Create, entity)); } - /// - /// Delete company. - /// - /// - /// Success - /// There was an error - [HttpDelete] - [Route("{id}/")] - public virtual async Task, Ok>> Delete([FromServices][ModelBinder(Name = "id")] TType entity) - { - db.Remove(entity!); - - return await db.ApiSaveChangesAsync(TypedResults.Ok()); - } - /// /// Update company. /// @@ -125,6 +110,33 @@ namespace NejCommon.Controllers } } [ApiController] + public abstract class AutoGetterDeleteController : AutoGetterController + where TType : class + where TGetAllResponse : IAutomappedAttribute, new() + where TGetResponse : IAutomappedAttribute, new() + { + public AutoGetterDeleteController(CommonDbContext appDb, IServiceProvider providers) : base(appDb, providers) + { + + } + + + /// + /// Delete company. + /// + /// + /// Success + /// There was an error + [HttpDelete] + [Route("{id}/")] + public virtual async Task, Ok>> Delete([FromServices][ModelBinder(Name = "id")] TType entity) + { + db.Remove(entity!); + + return await db.ApiSaveChangesAsync(TypedResults.Ok()); + } + } + [ApiController] public abstract class AutoGetterController : ControllerBase where TType : class where TGetAllResponse : IAutomappedAttribute, new()