Явное расширение Automapper и значения по умолчанию - PullRequest
1 голос
/ 17 июня 2019

С помощью Automapper вы можете установить свойство, требующее явного расширения .С помощью этой опции, если запрос не запрашивает явное расширение этого свойства, Automapper не будет отображать поле и оно будет иметь нулевое значение.

То, что я ищу, - это способ предоставления значения по умолчанию в этомдело.В частности, когда этот параметр применяется к свойству, представляющему коллекцию, если он не раскрыт, вместо возврата значения null я хотел бы вернуть список ключевых идентификаторов.

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

Кроме того, я использую динамический в качестве целевого типа, поэтому разница между массивом типов int и массивом сложных объектовне должно быть проблемой, я думаю ...

Быстрый пример того, чего я пытаюсь достичь, с Членами, требующими явного расширения

GET: www.myapi.com/goups/3?$expand=members   returns-
{
  "id": 3,
  "name":"GroupA",
  "members": [
    { "id":1, "name":"Bob" },
    { "id":2, "name":"Sue" }
  ]
}

GET: www.myapi.com/goups/3   returns-
{
  "id": 3,
  "name":"GroupA",
  "members": [1,2]
}

...