Dream Factory .NET SDK Post records Уникальная ошибка целостности

В.NET SDK ваш метод создания записи передает 0 для идентификатора для всех записей, поскольку это неизвестно, пока ответ не вернется с заполненным идентификатором и т. Д.

Кажется, что JSON DefaultValueHandling = DefaultValueHandling.Ignore не работает на только что созданных int '0' идентификаторах

Поэтому тело имеет идентификатор:0 и пытается вставить записи с идентификатором:0 для всех и отключает ограничение Уникальность для внутреннего исключения в fiddler.

1 ответ

Решение

У меня была похожая проблема с DreamFactory

В качестве примера я добавил условный атрибут сериализации свойств в Poco/DTO для штатного расписания.

внутренний класс StaffRecord {

        public bool ShouldSerializeUid()
        {
            return Uid != 0;
        }

        public int Uid { get; set; }

        public string FirstName { get; set; }
        public string LastName { get; set; }
        public int Age { get; set; }
        public bool Active { get; set; }

        public override string ToString()
        {
            return string.Format("{0}: name = {1} {2}, age = {3}, active = {4}", Uid, FirstName, LastName, Age, Active);
        }
    }

Теперь это работает, как и ожидалось, при сериализации / десериализации

Вот документы в Сериализации Условных Свойств документов JSON.NET

Ура:D

Другие вопросы по тегам