2

Я использую клиент silverlight с ado.net dataservices на основе сущности.Связанные объекты EF связанных объектов

У меня есть Entity Контакт и Entity адрес, который связан с внешним ключом отношения корабля ... Контакт может иметь 1 или более АДРЕСА, но адрес нужно всегда по крайней мере 1 контакт .. довольно основной .. .

у меня есть хранилище для моих контактов и адреса, который имеет метод Add (T объект), ...

на моем клиенте у меня есть форма с позволяет пользователям добавлять контакт с адресом

и я хочу сохранить оба в базе данных ...

Address a = new Address(); 
a.Street="Street", 
a.City = "City" 
a.Contact = 
new Contact(){ Name="Name",Age="60"} 

_repository.Add(a); 

.... 

Ok я понял, что я не могу сохранить родственный граф объектов сразу, так что я сделал что-то вроде этого

DataBaseEntities.AddToContact(obj2Badded.Contact); 
DataBaseEntities.AddToAddress(obj2Badded); 
DataBaseEntities.SetLink(obj2Badded,"Contact",object2Badded.Contact); 
DataBaseEinties.BeginSaveChanges(...) 

Есть прочь сделать это в transations как когда контакт не добавлен адрес будет также не может быть добавлен и наоборот ...

... и все, что я пытался не работает ...

было бы здорово, если бы кто-то может мне точку в правильном направлении на эту тему I просто хочу t o добавить связанный объект graph =} ...

ответ

0

Ваш первый пример должен работать просто отлично, связанные объекты и все. Нет необходимости добавлять связанные объекты в контекст отдельно, если вы вставляете новые объекты для них обоих. Поэтому, если вы не сообщите нам, в чем проблема, когда вы запускаете этот код, это будет сложно.

0

У меня была аналогичная проблема, и она работала для меня после того, как добавить что-то вроде

DatabaseEntities.UpdateObject(obj2Badded); 

непосредственно перед

DatabaseEntities.BeginSavingChanged(); 

Это не требуется, если вы включите EDMX в проекте эн использования в ObjectContext, но это необходимо, если вы создаете ссылку на службу и используете сгенерированный DataServiceContext.

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

  • Нет связанных вопросов^_^