MSCRM: как создавать сущности и устанавливать отношения с помощью провайдера xRM linq - PullRequest
1 голос
/ 17 июня 2010

Нужно ли сохранять вновь созданные экземпляры сущностей CRM, прежде чем я смогу установить отношения с другими экземплярами сущностей crm?

Я сталкиваюсь с проблемой, что после вызова CrmDataContext.SaveChanges() недавно созданные сущности записываются вбазе данных, но в базе данных отсутствуют связи между этими вновь созданными экземплярами.

Что мне не хватает?Должен ли я вызывать CrmDataContext.SaveChanges() каждый раз, когда я создаю новый экземпляр сущности crm, который я хочу иметь отношения с другими экземплярами CRM-сущности?

1 Ответ

1 голос
/ 07 августа 2010

Вы должны быть в состоянии установить отношения с другими объектами в отношении 1: N перед сохранением этого объекта (т. Е. Поиска).

Если вы хотите, чтобы ваш объект ссылался на другой объект, он потребуетсяЧтобы быть сохраненным первым ИЛИ вам нужно сначала установить Guid для сущности.В противном случае ваша ссылка не будет привязана.

Когда вы создаете новый объект, его идентификатор не устанавливается до тех пор, пока он не будет сохранен в базе данных, если вы не установите его вручную.Если вы установите его вручную, он будет учитывать новый Guid, который вы ему дали, и отношения выживут в процессе сохранения.

Если вы пытаетесь сохранить сущность по отдельности, вам нужно убедиться, что вы сохранили всесущности, на которые он ссылается перед сохранением этой сущности, иначе у нее не будет ссылки.

...