From 82b5d1092cb70e411bb1914deeade063683f9aab Mon Sep 17 00:00:00 2001 From: Alberto Mori Date: Sat, 29 Sep 2018 17:53:08 +0200 Subject: [PATCH 1/2] upgrade nuget packages. fix breaking changes of core.common package rc5 --- .../Events/EventStoreTest.cs | 1 - .../Fixtures/CommonContextFixture.cs | 56 -------- .../Fixtures/EventsFixtures.cs | 4 +- .../Fixtures/NewAdministratorCreatedEvent.cs | 20 +++ .../Fixtures/UserDisabledEvent.cs | 16 +++ .../Fixtures/UserEnabledEvent.cs | 16 +++ .../ReadModels/CommonDatabaseTest.cs | 37 ------ .../Repository/RepositoryTest.cs | 52 -------- .../CommonContext.cs | 45 ------- .../Events/EventStore.cs | 2 +- .../{Events => }/EventsContext.cs | 4 +- .../Mapping/EventMapping.cs | 2 +- .../Mapping/GeneralSettingsMapping.cs | 28 ---- .../Mapping/UserMapping.cs | 29 ---- .../ReadModels/CommonDatabase.cs | 36 ----- .../Repository/Repository.cs | 124 ------------------ .../Wilcommerce.Core.Data.EFCore.csproj | 13 +- 17 files changed, 65 insertions(+), 420 deletions(-) delete mode 100644 Wilcommerce.Core.Data.EFCore.Test/Fixtures/CommonContextFixture.cs create mode 100644 Wilcommerce.Core.Data.EFCore.Test/Fixtures/NewAdministratorCreatedEvent.cs create mode 100644 Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserDisabledEvent.cs create mode 100644 Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserEnabledEvent.cs delete mode 100644 Wilcommerce.Core.Data.EFCore.Test/ReadModels/CommonDatabaseTest.cs delete mode 100644 Wilcommerce.Core.Data.EFCore.Test/Repository/RepositoryTest.cs delete mode 100644 src/Wilcommerce.Core.Data.EFCore/CommonContext.cs rename src/Wilcommerce.Core.Data.EFCore/{Events => }/EventsContext.cs (91%) delete mode 100644 src/Wilcommerce.Core.Data.EFCore/Mapping/GeneralSettingsMapping.cs delete mode 100644 src/Wilcommerce.Core.Data.EFCore/Mapping/UserMapping.cs delete mode 100644 src/Wilcommerce.Core.Data.EFCore/ReadModels/CommonDatabase.cs delete mode 100644 src/Wilcommerce.Core.Data.EFCore/Repository/Repository.cs diff --git a/Wilcommerce.Core.Data.EFCore.Test/Events/EventStoreTest.cs b/Wilcommerce.Core.Data.EFCore.Test/Events/EventStoreTest.cs index 1644669..02f58e4 100644 --- a/Wilcommerce.Core.Data.EFCore.Test/Events/EventStoreTest.cs +++ b/Wilcommerce.Core.Data.EFCore.Test/Events/EventStoreTest.cs @@ -1,6 +1,5 @@ using System; using System.Linq; -using Wilcommerce.Core.Common.Events.User; using Wilcommerce.Core.Data.EFCore.Events; using Wilcommerce.Core.Data.EFCore.Test.Fixtures; using Xunit; diff --git a/Wilcommerce.Core.Data.EFCore.Test/Fixtures/CommonContextFixture.cs b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/CommonContextFixture.cs deleted file mode 100644 index c30c12d..0000000 --- a/Wilcommerce.Core.Data.EFCore.Test/Fixtures/CommonContextFixture.cs +++ /dev/null @@ -1,56 +0,0 @@ -using Microsoft.AspNetCore.Identity; -using Microsoft.EntityFrameworkCore; -using Moq; -using System; -using Wilcommerce.Core.Common.Domain.Models; - -namespace Wilcommerce.Core.Data.EFCore.Test.Fixtures -{ - public class CommonContextFixture : IDisposable - { - public CommonContext Context { get; protected set; } - - public CommonContextFixture() - { - BuildContext(); - PrepareData(); - } - - public void Dispose() - { - CleanData(); - if (Context != null) - { - Context.Dispose(); - } - - GC.SuppressFinalize(this); - } - - protected virtual void PrepareData() - { - var administrator = User.CreateAsAdministrator("Administrator", "admin@wilcommerce.com", "123", new Mock>().Object); - Context.Users.Add(administrator); - - var settings = GeneralSettings.Create("Wilcommerce", "it-IT", "EUR", "info@wilcommerce.com"); - Context.Settings.Add(settings); - - Context.SaveChanges(); - } - - protected virtual void CleanData() - { - Context.Users.RemoveRange(Context.Users); - Context.Settings.RemoveRange(Context.Settings); - } - - protected virtual void BuildContext() - { - var options = new DbContextOptionsBuilder() - .UseInMemoryDatabase(databaseName: "InMemory-Common") - .Options; - - Context = new CommonContext(options); - } - } -} diff --git a/Wilcommerce.Core.Data.EFCore.Test/Fixtures/EventsFixtures.cs b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/EventsFixtures.cs index 75b2472..eadcf9e 100644 --- a/Wilcommerce.Core.Data.EFCore.Test/Fixtures/EventsFixtures.cs +++ b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/EventsFixtures.cs @@ -1,8 +1,6 @@ using Microsoft.EntityFrameworkCore; using System; -using Wilcommerce.Core.Common.Domain.Events; -using Wilcommerce.Core.Common.Events.User; -using Wilcommerce.Core.Data.EFCore.Events; +using Wilcommerce.Core.Common.Events; namespace Wilcommerce.Core.Data.EFCore.Test.Fixtures { diff --git a/Wilcommerce.Core.Data.EFCore.Test/Fixtures/NewAdministratorCreatedEvent.cs b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/NewAdministratorCreatedEvent.cs new file mode 100644 index 0000000..9dcbed2 --- /dev/null +++ b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/NewAdministratorCreatedEvent.cs @@ -0,0 +1,20 @@ +using System; +using Wilcommerce.Core.Infrastructure; + +namespace Wilcommerce.Core.Data.EFCore.Test.Fixtures +{ + public class NewAdministratorCreatedEvent : DomainEvent + { + public Guid UserId { get; private set; } + public string Name { get; private set; } + public string Email { get; private set; } + + public NewAdministratorCreatedEvent(Guid userId, string name, string email) + : base(userId ,typeof(NewAdministratorCreatedEvent)) + { + UserId = userId; + Name = name; + Email = email; + } + } +} diff --git a/Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserDisabledEvent.cs b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserDisabledEvent.cs new file mode 100644 index 0000000..165b59b --- /dev/null +++ b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserDisabledEvent.cs @@ -0,0 +1,16 @@ +using System; +using Wilcommerce.Core.Infrastructure; + +namespace Wilcommerce.Core.Data.EFCore.Test.Fixtures +{ + public class UserDisabledEvent : DomainEvent + { + public Guid UserId { get; private set; } + + public UserDisabledEvent(Guid userId) + : base(userId, typeof(UserDisabledEvent)) + { + UserId = userId; + } + } +} diff --git a/Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserEnabledEvent.cs b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserEnabledEvent.cs new file mode 100644 index 0000000..3238d97 --- /dev/null +++ b/Wilcommerce.Core.Data.EFCore.Test/Fixtures/UserEnabledEvent.cs @@ -0,0 +1,16 @@ +using System; +using Wilcommerce.Core.Infrastructure; + +namespace Wilcommerce.Core.Data.EFCore.Test.Fixtures +{ + public class UserEnabledEvent : DomainEvent + { + public Guid UserId { get; private set; } + + public UserEnabledEvent(Guid userId) + : base(userId, typeof(UserEnabledEvent)) + { + UserId = userId; + } + } +} diff --git a/Wilcommerce.Core.Data.EFCore.Test/ReadModels/CommonDatabaseTest.cs b/Wilcommerce.Core.Data.EFCore.Test/ReadModels/CommonDatabaseTest.cs deleted file mode 100644 index ee84785..0000000 --- a/Wilcommerce.Core.Data.EFCore.Test/ReadModels/CommonDatabaseTest.cs +++ /dev/null @@ -1,37 +0,0 @@ -using System.Linq; -using Wilcommerce.Core.Common.Domain.Models; -using Wilcommerce.Core.Data.EFCore.ReadModels; -using Wilcommerce.Core.Data.EFCore.Test.Fixtures; -using Xunit; - -namespace Wilcommerce.Core.Data.EFCore.Test.ReadModels -{ - public class CommonDatabaseTest : IClassFixture - { - private CommonContextFixture _fixture; - - private CommonDatabase _database; - - public CommonDatabaseTest(CommonContextFixture fixture) - { - _fixture = fixture; - _database = new CommonDatabase(_fixture.Context); - } - - [Fact] - public void GeneralSettings_Must_Have_A_Record() - { - bool hasSettings = _database.Settings.Any(); - Assert.True(hasSettings); - } - - [Fact] - public void Users_Should_Have_AtLeast_One_Administrator() - { - var users = _database.Users; - bool hasAdministrator = users.Any(u => u.Role == User.Roles.ADMINISTRATOR); - - Assert.True(hasAdministrator); - } - } -} diff --git a/Wilcommerce.Core.Data.EFCore.Test/Repository/RepositoryTest.cs b/Wilcommerce.Core.Data.EFCore.Test/Repository/RepositoryTest.cs deleted file mode 100644 index 32bf692..0000000 --- a/Wilcommerce.Core.Data.EFCore.Test/Repository/RepositoryTest.cs +++ /dev/null @@ -1,52 +0,0 @@ -using Microsoft.AspNetCore.Identity; -using Moq; -using System.Linq; -using Wilcommerce.Core.Common.Domain.Models; -using Wilcommerce.Core.Data.EFCore.ReadModels; -using Wilcommerce.Core.Data.EFCore.Test.Fixtures; -using Xunit; - -namespace Wilcommerce.Core.Data.EFCore.Test.Repository -{ - public class RepositoryTest : IClassFixture - { - private CommonContextFixture _fixture; - - private EFCore.Repository.Repository _repository; - - private CommonDatabase _database; - - public RepositoryTest(CommonContextFixture fixture) - { - _fixture = fixture; - _repository = new EFCore.Repository.Repository(_fixture.Context); - _database = new CommonDatabase(_fixture.Context); - } - - [Fact] - public void Add_New_User_Should_Increment_Users_Number() - { - int usersCount = _database.Users.Count(); - - var user = User.CreateAsAdministrator("Administrator2", "admin2@wilcommerce.com", "456", new Mock>().Object); - _repository.Add(user); - _repository.SaveChanges(); - - int newUsersCount = _database.Users.Count(); - - Assert.Equal(usersCount + 1, newUsersCount); - } - - [Fact] - public void GetByKey_Should_Return_The_User_Found() - { - var userId = _database.Users.FirstOrDefault(u => u.Email == "admin@wilcommerce.com").Id; - - var user = _repository.GetByKey(userId); - - Assert.NotNull(user); - Assert.Equal(userId, user.Id); - Assert.Equal("admin@wilcommerce.com", user.Email); - } - } -} diff --git a/src/Wilcommerce.Core.Data.EFCore/CommonContext.cs b/src/Wilcommerce.Core.Data.EFCore/CommonContext.cs deleted file mode 100644 index 1fa541b..0000000 --- a/src/Wilcommerce.Core.Data.EFCore/CommonContext.cs +++ /dev/null @@ -1,45 +0,0 @@ -using Microsoft.EntityFrameworkCore; -using Wilcommerce.Core.Common.Domain.Models; -using Wilcommerce.Core.Data.EFCore.Mapping; - -namespace Wilcommerce.Core.Data.EFCore -{ - /// - /// Defines the Entity Framework context for the common package - /// - public class CommonContext : DbContext - { - /// - /// Get or set the list of users - /// - public virtual DbSet Users { get; set; } - - /// - /// Get or set the list of settings - /// - public virtual DbSet Settings { get; set; } - - /// - /// Construct the common context - /// - /// The context options - public CommonContext(DbContextOptions options) - : base(options) - { - - } - - /// - /// Override the - /// - /// The modelBuilder instance - protected override void OnModelCreating(ModelBuilder modelBuilder) - { - modelBuilder - .MapUser() - .MapSettings(); - - base.OnModelCreating(modelBuilder); - } - } -} diff --git a/src/Wilcommerce.Core.Data.EFCore/Events/EventStore.cs b/src/Wilcommerce.Core.Data.EFCore/Events/EventStore.cs index f7e912a..40d6f66 100644 --- a/src/Wilcommerce.Core.Data.EFCore/Events/EventStore.cs +++ b/src/Wilcommerce.Core.Data.EFCore/Events/EventStore.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; -using Wilcommerce.Core.Common.Domain.Events; +using Wilcommerce.Core.Common.Events; using Wilcommerce.Core.Infrastructure; namespace Wilcommerce.Core.Data.EFCore.Events diff --git a/src/Wilcommerce.Core.Data.EFCore/Events/EventsContext.cs b/src/Wilcommerce.Core.Data.EFCore/EventsContext.cs similarity index 91% rename from src/Wilcommerce.Core.Data.EFCore/Events/EventsContext.cs rename to src/Wilcommerce.Core.Data.EFCore/EventsContext.cs index dece68e..bb6535b 100644 --- a/src/Wilcommerce.Core.Data.EFCore/Events/EventsContext.cs +++ b/src/Wilcommerce.Core.Data.EFCore/EventsContext.cs @@ -1,8 +1,8 @@ using Microsoft.EntityFrameworkCore; -using Wilcommerce.Core.Common.Domain.Events; +using Wilcommerce.Core.Common.Events; using Wilcommerce.Core.Data.EFCore.Mapping; -namespace Wilcommerce.Core.Data.EFCore.Events +namespace Wilcommerce.Core.Data.EFCore { /// /// Defines the Entity Framework context for the events diff --git a/src/Wilcommerce.Core.Data.EFCore/Mapping/EventMapping.cs b/src/Wilcommerce.Core.Data.EFCore/Mapping/EventMapping.cs index 426de21..0ae7c5a 100644 --- a/src/Wilcommerce.Core.Data.EFCore/Mapping/EventMapping.cs +++ b/src/Wilcommerce.Core.Data.EFCore/Mapping/EventMapping.cs @@ -1,5 +1,5 @@ using Microsoft.EntityFrameworkCore; -using Wilcommerce.Core.Common.Domain.Events; +using Wilcommerce.Core.Common.Events; namespace Wilcommerce.Core.Data.EFCore.Mapping { diff --git a/src/Wilcommerce.Core.Data.EFCore/Mapping/GeneralSettingsMapping.cs b/src/Wilcommerce.Core.Data.EFCore/Mapping/GeneralSettingsMapping.cs deleted file mode 100644 index 120fc40..0000000 --- a/src/Wilcommerce.Core.Data.EFCore/Mapping/GeneralSettingsMapping.cs +++ /dev/null @@ -1,28 +0,0 @@ -using Microsoft.EntityFrameworkCore; -using Wilcommerce.Core.Common.Domain.Models; - -namespace Wilcommerce.Core.Data.EFCore.Mapping -{ - /// - /// Defines the modelBuilder's extension methods to map the class - /// - public static class GeneralSettingsMapping - { - /// - /// Extension method. Maps the general settings class - /// - /// The modelBuilder instance - /// The modelBuilder instance - public static ModelBuilder MapSettings(this ModelBuilder modelBuilder) - { - var settingsMapping = modelBuilder.Entity(); - settingsMapping.ToTable("Wilcommerce_GeneralSettings"); - - settingsMapping.OwnsOne(s => s.Seo); - settingsMapping.OwnsOne(s => s.Favicon); - settingsMapping.OwnsOne(s => s.SiteLogo); - - return modelBuilder; - } - } -} diff --git a/src/Wilcommerce.Core.Data.EFCore/Mapping/UserMapping.cs b/src/Wilcommerce.Core.Data.EFCore/Mapping/UserMapping.cs deleted file mode 100644 index 7727fe3..0000000 --- a/src/Wilcommerce.Core.Data.EFCore/Mapping/UserMapping.cs +++ /dev/null @@ -1,29 +0,0 @@ -using Microsoft.EntityFrameworkCore; -using Wilcommerce.Core.Common.Domain.Models; - -namespace Wilcommerce.Core.Data.EFCore.Mapping -{ - /// - /// Defines the modelBuilder's extension methods to map the class - /// - public static class UserMapping - { - /// - /// Extension method. Maps the user class - /// - /// The modelBuilder instance - /// The modelBuilder instance - public static ModelBuilder MapUser(this ModelBuilder modelBuilder) - { - var userMapping = modelBuilder.Entity(); - - userMapping - .ToTable("Wilcommerce_Users") - .HasIndex(u => u.Email).IsUnique(); - - userMapping.OwnsOne(u => u.ProfileImage); - - return modelBuilder; - } - } -} diff --git a/src/Wilcommerce.Core.Data.EFCore/ReadModels/CommonDatabase.cs b/src/Wilcommerce.Core.Data.EFCore/ReadModels/CommonDatabase.cs deleted file mode 100644 index 048b3cc..0000000 --- a/src/Wilcommerce.Core.Data.EFCore/ReadModels/CommonDatabase.cs +++ /dev/null @@ -1,36 +0,0 @@ -using System.Linq; -using Wilcommerce.Core.Common.Domain.Models; -using Wilcommerce.Core.Common.Domain.ReadModels; - -namespace Wilcommerce.Core.Data.EFCore.ReadModels -{ - /// - /// Implementation of - /// - public class CommonDatabase : ICommonDatabase - { - /// - /// The DbContext instance - /// - protected CommonContext _context; - - /// - /// Construct the common database - /// - /// The instance of the common context - public CommonDatabase(CommonContext context) - { - _context = context; - } - - /// - /// Get the list of settings - /// - public IQueryable Settings => _context.Settings; - - /// - /// Get the list of users - /// - public IQueryable Users => _context.Users; - } -} diff --git a/src/Wilcommerce.Core.Data.EFCore/Repository/Repository.cs b/src/Wilcommerce.Core.Data.EFCore/Repository/Repository.cs deleted file mode 100644 index 01d8690..0000000 --- a/src/Wilcommerce.Core.Data.EFCore/Repository/Repository.cs +++ /dev/null @@ -1,124 +0,0 @@ -using System; -using System.Threading.Tasks; -using Wilcommerce.Core.Common.Domain.Repository; - -namespace Wilcommerce.Core.Data.EFCore.Repository -{ - /// - /// Implementation of - /// - public class Repository : IRepository - { - /// - /// The DbContext instance - /// - protected CommonContext _context; - - /// - /// Construct the repository for the common context - /// - /// The common context instance - public Repository(CommonContext context) - { - _context = context; - } - - /// - /// Dispose all the resource used - /// - public void Dispose() - { - if (_context != null) - { - _context.Dispose(); - } - - GC.SuppressFinalize(this); - } - - /// - /// Saves all the changes made on the aggregate - /// - public void SaveChanges() - { - try - { - _context.SaveChanges(); - } - catch - { - throw; - } - } - - /// - /// Async method. Saves all the changes made on the aggregate - /// - /// - public async Task SaveChangesAsync() - { - try - { - await _context.SaveChangesAsync(); - } - catch - { - throw; - } - } - - /// - /// Add an aggregate to the repository - /// - /// The aggregate's type - /// The aggregate to add - public void Add(TModel model) where TModel : class, Infrastructure.IAggregateRoot - { - try - { - _context.Set().Add(model); - } - catch - { - throw; - } - } - - /// - /// Gets the aggregate based on the specified key - /// - /// The aggregate's type - /// The key of the aggregate to search - /// The aggregate found - public TModel GetByKey(Guid key) where TModel : class, Infrastructure.IAggregateRoot - { - try - { - return _context.Find(key); - } - catch - { - throw; - } - } - - /// - /// Async method. Gets the aggregate based on the specified key - /// - /// The aggregate's type - /// The key of the aggregate to search - /// The aggregate found - public async Task GetByKeyAsync(Guid key) where TModel : class, Infrastructure.IAggregateRoot - { - try - { - var model = await _context.FindAsync(key); - return model; - } - catch - { - throw; - } - } - } -} diff --git a/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj b/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj index e6208ce..e559e34 100644 --- a/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj +++ b/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj @@ -28,12 +28,15 @@ - - - + + + - - + + all + runtime; build; native; contentfiles; analyzers + + From ce7c268aa9fe059d1561942abe3063b6ee7f2737 Mon Sep 17 00:00:00 2001 From: Alberto Mori Date: Sat, 29 Sep 2018 18:06:17 +0200 Subject: [PATCH 2/2] update readme and csproj --- README.md | 22 +------------------ .../Wilcommerce.Core.Data.EFCore.Test.csproj | 13 ++++++----- .../Wilcommerce.Core.Data.EFCore.csproj | 2 +- 3 files changed, 10 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 1c157e8..b2f850a 100644 --- a/README.md +++ b/README.md @@ -8,32 +8,12 @@ Nuget package available here [https://www.nuget.org/packages/Wilcommerce.Core.Data.EFCore](https://www.nuget.org/packages/Wilcommerce.Core.Data.EFCore) ## Usage -Add the CommonContext class to your project. - -For example in an ASP.NET Core project add this line to the ConfigureServices method in Startup.cs -``` -services.AddDbContext(options => // Specify your provider); -``` -The CommonContext is injected in the read model component and the Repositoryimplementation. - -If you need to persists the events using Entity Framework Core, add the EventsContext class to your project. +Add the the EventsContext class to your project. ``` services.AddDbContext(options => // Specify your provider); ``` The EventsContext is injected in the EventStore implementation -## Read model Component -The CommonDatabase class is the Entity Framework Core implementation of the [ICommonDatabase](https://github.com/wilcommerce/Wilcommerce.Core/blob/master/src/Wilcommerce.Core.Common/Domain/ReadModels/ICommonDatabase.cs) interface. - -It provides a facade to access all the readonly data. -It requires an instance of CommonContext as constructor parameters. - -## Repository Component -The Repository class is the Entity Framework Core implementation of the [IRepository](https://github.com/wilcommerce/Wilcommerce.Core/blob/master/src/Wilcommerce.Core.Common/Domain/Repository/IRepository.cs) interface. - -It provides all the methods useful for persist an Aggregate model. -It requires a CommonContext instance as constructor parameter. - ## EventStore Component The EventStore class is the Entity Framework Core implementation of the [IEventStore](https://github.com/wilcommerce/Wilcommerce.Core/blob/master/src/Wilcommerce.Core.Infrastructure/IEventStore.cs) interface. diff --git a/Wilcommerce.Core.Data.EFCore.Test/Wilcommerce.Core.Data.EFCore.Test.csproj b/Wilcommerce.Core.Data.EFCore.Test/Wilcommerce.Core.Data.EFCore.Test.csproj index 12e2768..22aa152 100644 --- a/Wilcommerce.Core.Data.EFCore.Test/Wilcommerce.Core.Data.EFCore.Test.csproj +++ b/Wilcommerce.Core.Data.EFCore.Test/Wilcommerce.Core.Data.EFCore.Test.csproj @@ -7,11 +7,14 @@ - - - - - + + + + + + all + runtime; build; native; contentfiles; analyzers + diff --git a/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj b/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj index e559e34..d42fb50 100644 --- a/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj +++ b/src/Wilcommerce.Core.Data.EFCore/Wilcommerce.Core.Data.EFCore.csproj @@ -14,7 +14,7 @@ false false false - 1.0.0-rc3 + 1.0.0-rc4 Alberto Mori