Расширения sqlite.net обновляют сущности с помощью внешних ключей

Я сталкиваюсь с проблемой, когда моя сущность имеет отношения один-на-один между одной и той же сущностью более одного раза. Объяснить: '

public class BookEntity : ISyncEntity
    {
        [PrimaryKey, AutoIncrement]
        public int? ID { get; set; }

        [ForeignKey(typeof(UserEntity))]
        public int AuthorID { get; set; }
        [ManyToOne(foreignKey: "AuthorID")]
        public UserEntity Author { get; set; }

        [ManyToOne(foreignKey: "ReviewerID")]
        public UserEntity Reviewer { get; set; }

        [ForeignKey(typeof(UserEntity))]
        public int ReviewerID { get; set; }

    }

'

Здесь и Автор, и Рецензент имеют тип UserEntity. Мы столкнулись с проблемой сохранения этих данных. Идентификатор рецензента неправильно перезаписывается идентификатором автора.

Вот мой псевдокод:

  1. InsertOrReplaceAsync - BookEntity
  2. InsertOrReplaceAsync - Автор
  3. InsertOrReplaceAsync - Рецензент
  4. UpdateWithChildrenAsync - BookEntity

0 ответов

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