Im работая на участке обновления для моего приложения, я хочу использовать ApplyCurrentValues, но, похоже, не работает (неизвестно)Не удается получить ApplyCurrentValues (Entity) для работы
Dim e = (From o In x.Concours Where o.numero_concours = concours.numero_concours Select o).FirstOrDefault()
x.ApplyCurrentValues(e.EntityKey.EntitySetName,concours) x.savechanges()
для того, чтобы сделать его работу я изменил код так:
x.Concours.Attach(New Concour With {.numero_concours = concours.numero_concours})
Dim e = New Concour With {.numero_concours = concours.numero_concours}
x.Entry(concours).CurrentValues.SetValues(e)
x.SaveChanges()
, но это дает мне эту ошибку
Невозможно вызвать элемент «CurrentValues» для типа сущности «Concour», потому что сущность не существует в контексте. Чтобы добавить объект в контекст, вызовите метод добавления DbSet или Attach.
так, я использовал вместо этого:
Dim e = (From o In x.Concours Where o.numero_concours = concours.numero_concours Select o).FirstOrDefault()
x.Concours.Attach(New Concour With {.numero_concours = e.numero_concours})
((IObjectContextAdapter)x).ObjectContext.ApplyCurrentValues("Conours", e)
x.SaveChanges()
, но это дает мне ошибку синтаксиса на ((IObjectContext ..... любые предложения, пожалуйста !!!
Public Sub UpdateConcours(concours As Concour) Implements IConcoursRepository.UpdateConcours
Dim e = (
From o In x.Concours
Where o.numero_concours = concours.numero_concours
Select o)
.First()
x.Entry(e)
.OriginalValues
.SetValues(concours)
x.SaveChanges()
End Sub
Я пробовал, но ничего не изменилось в моей базе данных. Я не вижу, в чем проблема :( –
Что содержит объект 'concours'? Разве это не так? – qujck
определяется как Concour. Я поставил функцию обновления на четкую идею. –