使用ef core plus,我正在尝试更新模型上的一组行:
await _context.Set<Critique>()
.Include(c => c.User)
.Where(c => c.Closed && c.User.Id == user.Id)
.UpdateAsync(c => new Critique() { User = deletedUser });
这里出现以下异常:
ArgumentNullException:值不能为null。 参数名称:属性 Check.cs第21行中的Npgsql.EntityFrameworkCore.PostgreSQL.Utilities.Check.NotNull(T值,字符串parameterName)
TargetInvocationException:调用的目标引发了异常。 System.RuntimeMethodHandle.InvokeMethod(对象目标,对象[]参数,签名sig,布尔构造函数,布尔wrapException
当我仅使用ef内核加载数据时,它将加载我期望的1行
var test = await _context.Set<Critique>()
.Where(c => c.Closed && c.User.Id == user.Id)
.ToArrayAsync();
数据库模型没什么花哨的,但太大了,无法在此处发布。我广泛使用[必填],并且有很多一对多关系。
(顺便说一句,user.Id不是null且不可用,而且deleteUser在代码和数据库中也都可用。)
该错误应如何解释?我在做什么错了?
感谢您的帮助!
答案 0 :(得分:1)
我们的图书馆目前可以更新价值,但无法使用导航属性更新价值
这不起作用
5.1
但是,如果您拥有该物业,这将奏效
var driver = new AndroidDriver<AndroidElement>(new URL("http://0.0.0.0:4723/wd/hub"), capabilities);
此外,由于您没有检索到此信息,因此没有必要添加.UpdateAsync(c => new Critique() { User = deletedUser });
。