2013-09-05 5 views
0

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 

ответ

0

Попробуйте это:

Dim e = (
    From o In x.Concours 
    Where o.numero_concours = concours.numero_concours 
    Select o) 
    .First() 

x.Entry(e) 
    .OriginalValues 
    .SetValues(concours) 

x.ChangeTracker.DetectChanges(); 

x.savechanges() 
+0

Я пробовал, но ничего не изменилось в моей базе данных. Я не вижу, в чем проблема :( –

+0

Что содержит объект 'concours'? Разве это не так? – qujck

+0

определяется как Concour. Я поставил функцию обновления на четкую идею. –

Смежные вопросы