我在整个项目的并发检查中都使用了“教程:处理并发-具有EF Core的ASP.NET MVC”。 https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/concurrency?view=aspnetcore-2.2
我在一页上遇到了障碍。用它来检索表中的现有数据
var PersonToUpdate = await _context.Customer
.Include(np => np.Person)
.SingleOrDefaultAsync(m => m.inputPersonID == PersonID);
在网站上的其他任何地方都可以使用
if (await TryUpdateModelAsync<CustomerModel>(RecordToSave, "Customer", s => s.Person.Forename)) {
但是在这里该项目无法生成,尽管objPerson.Forename
自动完成,所以我仍然收到以下错误消息,因此引用是正确的。
'PersonModel' does not contain a definition for 'Forename' and no accessible extension method 'objPerson' accepting a first argument of type 'PersonModel' could be found (are you missing a using directive or an assembly reference?)
Person模型是Customer模型的父级,而如果删除了并发检查,则在加载和保存记录方面其他所有方面都起作用。
您知道我在做什么错吗,或者您是否可以对父/子模型进行并发检查?我是否必须进行两项并发检查,一项用于父项,另一项用于子项?