ASP. NET веб-API JSON форматировщик возвращает свойства [NotMapped], а XML formatter - нет. - PullRequest
0 голосов
/ 03 августа 2020

Изучая веб-API asp. net MVC с моделями EF, я обнаружил несоответствие в поведении, когда дело доходит до обработки свойств с атрибутом [NotMapped] (или, что то же самое, игнорируется через Fluent API) с помощью средств форматирования JSON и XML.

Предположим, в моей модели у меня есть свойство FullName под сущностью Customer, подобной этой, которая должна быть исключена из создания столбца базы данных:

[NotMapped]
public string FullName => $"{FirstName} {LastName}";

(просто для записи, я также пробовал использовать метод Fluent API modelBuilder.Entity<Customer>().Ignore(c => c.FullName) с тем же результатом)

Позже, когда сущность Customer возвращается через веб-API как JSON, это свойство правильно сериализовано и включено в возвращаемый результат. Но с XML он полностью игнорируется.

Кажется, я не могу найти никакой документации, в которой упоминается такое поведение. Предполагается ли это и следует ли ожидать при разработке приложения?

...