1
Serilog를 사용하여 이벤트를 직렬화하고 있는데,이 이벤트는 모든 이벤트에 대한 필수 정보를 포함하는 기본 추상 클래스를 확장하는 다양한 서비스에서 전송할 수 있으며 하위 클래스는 모두 특정 이벤트 정보가 필요했습니다.Serilog 이벤트 직렬화시 기본 클래스 속성을 생략합니다.
문제는 로그에서 하위 클래스 속성 만 저장되고 상위 클래스 속성은 제외된다는 것입니다. 직렬화가 기본 클래스 속성을 직렬화에 포함하도록 강제하는 방법이 있습니까?
기본 클래스를 비 추상화로 변경하고 Destructor.ToMaximumLength를 10000으로 설정했지만 여전히 운이 좋지 않았습니다.
public abstract class AnalyticsEvent
{
public readonly Guid EventId = Guid.NewGuid();
public readonly DateTimeOffset EventTime = DateTimeOffset.UtcNow;
public readonly EventGroups EventGroup;
public readonly Guid? TransactionId;
public readonly string EventName;
public AnalyticsEvent(EventGroups eventGroup, Guid? transactionId, string eventName)
{
EventGroup = eventGroup;
TransactionId = transactionId;
EventName = eventName;
}
}
포함시켜야하는 기본 클래스 속성의 스 니펫을 게시 할 수 있습니까? 공개되었거나 보호되어 있습니까? 감사! –
@NicholasBlumhardt 스 니펫을 추가했습니다. – evilpilaf