Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,12 @@
// Free To Use To Build Reliable Library Management Solutions
//-----------------------------------------------------------

using LibraryManagement.Api.Models.Foundations.ReaderBooks;
using Microsoft.EntityFrameworkCore;
using LibraryManagement.Api.Models.Foundations.Books;

namespace LibraryManagement.Api.Brokers.Storages
{
public partial class StorageBroker
public partial interface IStorageBroker
{
public DbSet<ReaderBook> ReaderBooks { get; set; }
ValueTask<Book> InsertBookAsync(Book book);
}
}
10 changes: 10 additions & 0 deletions LibraryManagement.Api/Brokers/Storages/IStorageBroker.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//-----------------------------------------------------------
// Copyright (c) Coalition of Good-Hearted Engineers
// Free To Use To Build Reliable Library Management Solutions
//-----------------------------------------------------------

namespace LibraryManagement.Api.Brokers.Storages
{
public partial interface IStorageBroker
{ }
}
3 changes: 3 additions & 0 deletions LibraryManagement.Api/Brokers/Storages/StorageBroker.Book.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,8 @@ namespace LibraryManagement.Api.Brokers.Storages
public partial class StorageBroker
{
public DbSet<Book> Books { get; set; }

public async ValueTask<Book> InsertBookAsync(Book book) =>
await InsertAsync(book);
}
}
11 changes: 10 additions & 1 deletion LibraryManagement.Api/Brokers/Storages/StorageBroker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

namespace LibraryManagement.Api.Brokers.Storages
{
public partial class StorageBroker : EFxceptionsContext
public partial class StorageBroker : EFxceptionsContext, IStorageBroker
{
private readonly IConfiguration configuration;

Expand All @@ -19,6 +19,15 @@
this.Database.Migrate();
}

public async ValueTask<T> InsertAsync<T>(T @object)
{
var broker = new StorageBroker(this.configuration);
broker.Entry(@object).State = EntityState.Added;

Check warning on line 25 in LibraryManagement.Api/Brokers/Storages/StorageBroker.cs

View workflow job for this annotation

GitHub Actions / Build

Possible null reference argument for parameter 'entity' in 'EntityEntry DbContext.Entry(object entity)'.
await broker.SaveChangesAsync();

return @object;
}

protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
string connectionString =
Expand Down
Loading