не сопоставленное поле в DataContract не поддерживается - PullRequest
0 голосов
/ 07 января 2019

Я добавляю свойство Status в класс, основанный на ExpirationDate.

ExpirationDate находится в базе данных, а статус рассчитывается в классе.

Это выполняется, но выдает исключение, поскольку поле отсутствует в таблице.

    [DataMember]
    public ClientStatus Status {
        get; set;
    }

Но все остальное выбрасывает NotSupported и даже не попадает в базу данных.

    [NotMapped] or [IgnoreDataMember]
    public ClientStatus Status {
        get {
          //  return GetStatus();
          return ClientStatus.Active;
        }
        set { }  // tried with and without
    }

Исполнение здесь:

 return query.Skip(startRow).Take(pageSize).ToArray();    

query.Sql = '((System.Data.Entity.Infrastructure.DbQuery) q1) .Sql' сгенерировал исключение типа 'System.NotSupportedException'

Внутреннее исключение

Message = "The specified type member 'Status' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported."    

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...