Closed
Description
数据库:Sql server 2017
驱动: FreeSql.Provider.SqlServer Version="1.6.0"
我写了个demo作为参考sqlserver-seeddata-problem.zip,
此demo,他只会增加主表的Blog的二条数据。Posts(评论回复)无法增加
Fsql.CodeFirst.Entity<Blog>(e =>
{
e.HasData(new List<Blog>()
{
new Blog("title","content",DateTime.Now,false)
{
Posts=new List<Post>
{
new Post("replyContent",DateTime.Now,false),
new Post("replyContent",DateTime.Now,false),
new Post("replyContent",DateTime.Now,false),
}
},
new Blog("title","content",DateTime.Now,false)
{
Posts=new List<Post>
{
new Post("replyContent",DateTime.Now,false),
new Post("replyContent",DateTime.Now,false),
new Post("replyContent",DateTime.Now,false),
}
}
});
});
但如果只有一条Blog的数据时,分表的数据能正常增加
Fsql.CodeFirst.Entity<Blog>(e =>
{
e.HasData(new List<Blog>()
{
new Blog("title","content",DateTime.Now,false)
{
Posts=new List<Post>
{
new Post("replyContent",DateTime.Now,false),
new Post("replyContent",DateTime.Now,false),
new Post("replyContent",DateTime.Now,false),
}
}
});
});
SeedData 种子数据,我试了下在MySql和Sqlite下都能正常生成种子数据,然后到了SqlServer下,就会出现如下错误
NullReferenceException: Object reference not set to an instance of an object.
lambda_method(Closure , object , object )
FreeSql.Extensions.EntityUtil.EntityUtilExtensions.MapEntityValue(IFreeSql orm, Type entityType, object entityFrom, object entityTo)
FreeSql.DbSet<TEntity>.AddRange(IEnumerable<TEntity> data)
FreeSql.BaseRepository<TEntity>.Insert(IEnumerable<TEntity> entitys)
FreeSql.Extensions.EfCoreFluentApi.EfCoreTableFluent<T>+<>c__DisplayClass17_0.<HasData>b__1(object s, SyncStructureAfterEventArgs e)
FreeSql.Internal.CommonProvider.CodeFirstProvider.SyncStructure(TypeAndName[] objects)
FreeSql.Internal.CommonProvider.CodeFirstProvider.SyncStructure<TEntity>()
FreeSql.Internal.CommonProvider.Select0Provider<TSelect, T1>..ctor(IFreeSql orm, CommonUtils commonUtils, CommonExpression commonExpression, object dywhere)
FreeSql.Internal.CommonProvider.Select1Provider<T1>..ctor(IFreeSql orm, CommonUtils commonUtils, CommonExpression commonExpression, object dywhere)
FreeSql.SqlServer.Curd.SqlServerSelect<T1>..ctor(IFreeSql orm, CommonUtils commonUtils, CommonExpression commonExpression, object dywhere)
FreeSql.SqlServer.SqlServerProvider<TMark>.Select<T1>()
sqlserver_seeddata_problem.Controllers.BlogController.GetBlogs() in BlogController.cs
-
{
this.freeSql = freeSql;
}
public List<Blog> GetBlogs()
{
return freeSql.Select<Blog>().ToList();
}
}
}
lambda_method(Closure , object , object[] )
Microsoft.Extensions.Internal.ObjectMethodExecutor.Execute(object target, object[] parameters)
Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor+SyncObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, object controller, object[] arguments)
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Logged|12_1(ControllerActionInvoker invoker)
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, object state, bool isCompleted)
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(ref State next, ref Scope scope, ref object state, ref bool isCompleted)
Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.InvokeInnerFilterAsync()
Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|19_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, object state, bool isCompleted)
Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Logged|17_1(ResourceInvoker invoker)
Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
Metadata
Metadata
Assignees
Labels
No labels