Проект веб-службы MVC Core, использующий AspNetCore 2.0.0 и Serilogger 2.1.1.
При вызове Serilog для регистрации коллекции / IEnumerable / List объектов все, что он делает, это перечисляет типы объектов.Если мы перебираем элементы коллекции и регистрируем их независимо, Serilog хорошо их разрушает, и они правильно отображаются в наших журналах.
Базовый пример кода:
List<MyResponse> results = ValidateResourceCollection(events);
_logger.LogInformation("EventController.Post response {@results}", results);
И мы получимсообщение в журнале, подобное этому:
2018-06-11 10:53:35.952 -04:00 [Information] EventController.Post response "Blah.Models.Response.MyResponse, Blah.Models.Response.MyResponse"
Есть ли способ заставить Serilog правильно деструктурировать этот список?Я попытался исправить это, реализовав IDestructuringPolicy, но он вызывается только в том случае, если существует один объект для деструктуры.Если в качестве параметра используется коллекция объектов, IDestructuringPolicy никогда не вызывается.