Silverlight 4 DomainService - EntitiesInError - EntityConflict - PropertyNames выдает исключение InvalidOperationException

После вводное руководство для новой службы DomainService в Silverlight 4 RIA, я получил неожиданное исключение. Когда я выполняю обновление, свойство EntitiesInError[index].EntityConflict.PropertyNames выдает следующее исключение:

InvalidOperationException: имена свойств недоступны для конфликтов удаления.

Выполненный сервисный метод:

public void UpdateSr_Supplier(sr_Supplier currentsr_Supplier)
{
    // UPDATE the existing sr_Supplier
    this.ObjectContext.sr_Supplier.AttachAsModified(currentsr_Supplier, this.ChangeSet.GetOriginal(currentsr_Supplier));
}

Из ответа на этот поток Я понимаю, что мне лучше использовать службы с поддержкой Silverlight с настраиваемыми объектами службы (DataContract и DataMember), а затем назначать значения этих объектов настраиваемых служб фактическим объектам сервера (сгенерированным из модели БД, будь то Linq to Sql или Entity Data Model) и вручную вызовите SubmitChanges() в DataContext.


person Peet Brits    schedule 06.09.2010    source источник


Ответы (1)


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

person Sprague    schedule 02.11.2010
comment
Это сработало, как только я сменил установщик моей личности на публичный. Думаю, мне следует использовать метаданные для настраиваемых правил только для чтения, а не для конструктора сущностей. - person Peet Brits; 08.11.2010