mirror of
https://github.com/esiur/esiur-dotnet.git
synced 2025-06-27 05:23:13 +00:00
1.5
This commit is contained in:
@ -3,6 +3,11 @@
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<AssemblyName>Esyur.Stores.EntityCore</AssemblyName>
|
||||
<Authors>Ahmed Kh. Zamil</Authors>
|
||||
<Company>Esyur Foundation</Company>
|
||||
<Description>Esyur for Entity Framework Core</Description>
|
||||
<Product>Esyur Entity Framework Extension</Product>
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
@ -35,18 +35,28 @@ namespace Esyur.Stores.EntityCore
|
||||
{
|
||||
public static class EsyurExtensions
|
||||
{
|
||||
public static T CreateResource<T>(this DbContext dbContext) where T:IResource
|
||||
public static T CreateResource<T>(this DbContext dbContext, object properties = null) where T:class,IResource
|
||||
{
|
||||
return dbContext.GetInfrastructure().CreateResource<T>();
|
||||
return dbContext.GetInfrastructure().CreateResource<T>(properties);
|
||||
|
||||
}
|
||||
|
||||
public static T CreateResource<T>(this IServiceProvider serviceProvider) where T:IResource
|
||||
public static T CreateResource<T>(this DbSet<T> dbSet, object properties = null) where T:class,IResource
|
||||
{
|
||||
var resource = dbSet.GetInfrastructure().CreateResource<T>(properties);
|
||||
dbSet.Add(resource);
|
||||
return resource;
|
||||
}
|
||||
|
||||
public static T CreateResource<T>(this IServiceProvider serviceProvider, object properties = null) where T:class,IResource
|
||||
{
|
||||
var options = serviceProvider.GetService<IDbContextOptions>().FindExtension<EsyurExtensionOptions>();
|
||||
var manager = options.Store.Instance.Managers.Count > 0 ? options.Store.Instance.Managers.First() : null;
|
||||
|
||||
return Warehouse.New<T>("", options.Store, null, manager);
|
||||
var resource = Warehouse.New<T>("", options.Store, null, null, null, properties);
|
||||
|
||||
resource.Instance.Managers.AddRange(options.Store.Instance.Managers.ToArray());
|
||||
|
||||
return resource;
|
||||
}
|
||||
|
||||
public static DbContextOptionsBuilder UseEsyur(this DbContextOptionsBuilder optionsBuilder,
|
||||
|
Reference in New Issue
Block a user