gpt4 book ai didi

mysql - Entity Framework :Value cannot be null. 参数名称:key

转载 作者:行者123 更新时间:2023-11-29 06:10:13 24 4
gpt4 key购买 nike

在我的项目中,我将 Entity Framework 与 MySQL 结合使用。这段代码:

objectContext.users.Include("posts").Take(2).ToList()

抛出异常:System.ArgumentNullException:值不能为空。参数名称:key

具有这样的堆栈跟踪:

[ArgumentNullException: Value cannot be null.
Parameter name: key]
System.Collections.Generic.Dictionary`2.FindEntry(TKey key) +12670485
MySql.Data.Entity.Scope.GetFragment(String name) +27
MySql.Data.Entity.SelectStatement.AddDefaultColumns(Scope scope) +177
MySql.Data.Entity.SelectStatement.Wrap(Scope scope) +90
MySql.Data.Entity.SelectGenerator.WrapJoinInputIfNecessary(InputFragment fragment, Boolean isRightPart) +251
MySql.Data.Entity.SelectGenerator.HandleJoinExpression(DbExpressionBinding left, DbExpressionBinding right, DbExpressionKind joinType, DbExpression joinCondition) +110
MySql.Data.Entity.SelectGenerator.Visit(DbJoinExpression expression) +33
MySql.Data.Entity.SqlGenerator.VisitInputExpression(DbExpression e, String name, TypeUsage type) +50
MySql.Data.Entity.SelectGenerator.VisitInputExpressionEnsureSelect(DbExpression e, String name, TypeUsage type) +19
MySql.Data.Entity.SelectGenerator.Visit(DbProjectExpression expression) +45
MySql.Data.Entity.SqlGenerator.VisitInputExpression(DbExpression e, String name, TypeUsage type) +50
MySql.Data.Entity.SelectGenerator.VisitInputExpressionEnsureSelect(DbExpression e, String name, TypeUsage type) +19
MySql.Data.Entity.SelectGenerator.Visit(DbSortExpression expression) +61
MySql.Data.Entity.SqlGenerator.VisitInputExpression(DbExpression e, String name, TypeUsage type) +50
MySql.Data.Entity.SelectGenerator.VisitInputExpressionEnsureSelect(DbExpression e, String name, TypeUsage type) +19
MySql.Data.Entity.SelectGenerator.Visit(DbProjectExpression expression) +45
MySql.Data.Entity.SelectGenerator.GenerateSQL(DbCommandTree tree) +73
MySql.Data.MySqlClient.MySqlProviderServices.CreateDbCommandDefinition(DbProviderManifest providerManifest, DbCommandTree commandTree) +401
System.Data.EntityClient.EntityCommandDefinition..ctor(DbProviderFactory storeProviderFactory, DbCommandTree commandTree) +608

有趣的是 objectContext.users.Take(2).ToList()objectContext.users.Include("posts").ToList() 工作正常.

有人遇到过这个问题吗?

最佳答案

是的。完全相同的问题。我确认存在 join 的情况下的 take 似乎是问题所在。就我而言,由于我将 EF 查询投影到一个对象上,因此直接在数据库上执行 take ,而不是在投影后在本地执行(相当于您的 objectContext.users.Include ("posts").ToList(),在运行时间和消耗的内存方面存在巨大差异。

关于mysql - Entity Framework :Value cannot be null. 参数名称:key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9499384/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com