2017-05-15 2 views
1

Audit.NET 버전 7.0.6을 사용 중입니다. 내가 응용 프로그램을 실행할 때 내 웹 API 등록 방법Audit.WebAPI 구성

config.Filters.Add(new Audit.WebApi.AuditApiAttribute()); 

에 다음 줄을 추가 다음과 같은 런타임 오류

self referencing loop detected with type Appinstance.Path'Action.ActionParameters.request.Properties.MS_HttpContext.ApplicationInstance.Context'.

내가 Nuget에서 Newtonsoft.JSON의 최신 버전을 사용하고 있습니다에게 제공합니다.

답변

0

스택 추적을 제공 할 수 있습니까?

이 오류는 Newtonsoft.Json이 참조 루프가있는 개체를 serialize 할 수 없음을 의미하지만 Audit.NET에서 기본적으로 사용되는 json 변환은 이미 ReferenceLoopHandling 무시로 설정된 참조 루프를 무시하여이 문제를 처리합니다.

https://github.com/thepirat000/Audit.NET/blob/master/src/Audit.NET/AuditEvent.cs#L73

당신은 이벤트를 저장하는 사용자 정의 데이터 공급자를 사용하고 있습니까?

제공된 AuditEvent ToJson 메서드 또는 자체 참조를 처리하는 다른 메서드를 사용해야합니다. 자기 참조 루프 형 'ASP.global_asax'와 특성 '된 ApplicationInstance'에 대한 검색 : 추가 정보는 Newtonsoft.Json.dll 에서 'Newtonsoft.Json.JsonSerializationException': 던져 예외 :

+0

Newtonsoft.Json.JsonSerializationException는 메시지가 발생했습니다. 경로 'Action.ActionParameters.request.Properties.MS_HttpContext.ApplicationInstance.Context'. – Srikar

+0

내 webapi가 로컬 시스템에서 실행 중이며 감사의 sqldataprovider를 사용하여 감사 항목을 기록했습니다. – Srikar

+0

새로운 문제 https://github.com/thepirat000/Audit.NET/issues/new를 자유롭게 열어 재현하는 방법에 대해 자세히 설명해주십시오. – thepirat000