2016-12-14 6 views
0

https://docs.particular.net/nservicebus/serialization/json을 기반으로, 예를 들어 IgnoreNullValues와 같은 일부 설정을 JsonSerializer에 전달하고 싶습니다. 그러나 지금까지는 serializer에 설정을 전달하는 방법에 대한 예제를 찾지 못했습니다. 내가 찾을 수 없습니다 무엇C#에서 Nservicebus JsonSerializer에 설정을 전달하는 방법은 무엇입니까?

var serialization = endpointConfiguration.UseSerialization<JsonSerializer>(); 

//I would like to use something like below, 
//but I don't find any examples of how to pass settings to the JsonSerializer 
serialization.Settings.IgnoreNUllValues = true; 

는 설정이나 기본 JsonSerializer에 사용할 설정 목록을 전달하기위한 올바른 구문입니다.

감사합니다. 자신의 documentation 당으로

답변

0

,이 정확히 내 질문에 대한 답변입니다 조금도. 이것이 NewtonsoftSerializer가 존재하는 이유입니다. 여러분이 원하는 설정으로 프로젝트에있는 외부 JSON.NET 패키지를 사용할 수 있습니다.

1

:

var settings = new JsonSerializerSettings 
{ 
    TypeNameHandling = TypeNameHandling.Auto, 
    Converters = 
    { 
     new IsoDateTimeConverter 
     { 
      DateTimeStyles = DateTimeStyles.RoundtripKind 
     } 
    } 
}; 
var serialization = endpointConfiguration.UseSerialization<NewtonsoftSerializer>(); 
serialization.Settings(settings); 

이것은 NewtonsoftSerializer를 사용합니까이 대신 JsonSerializer 너무 귀하의 마일리지가 다를 수 있습니다. 기본 JSON.NET으로

이 NServiceBus에 내면화되어, 당신은 그것에 어떤 옵션을를 설정하거나 정말 그 API에 액세스 할 수 없음을 의미 :

데이비드 Boike 주석에서
+0

이 솔루션을 보았지만 별도의 패키지 인 [NewtonsoftSerializer] (https://docs.particular.net/nservicebus/serialization/newtonsoft)를 사용하고 있습니다. 나는 nsb와 함께 기본적으로 제공되는 [JsonSerializer] (https://docs.particular.net/nservicebus/serialization/json)를 사용하려고 시도했다. 어쨌든 고마워. – znn

+2

@znn 기본적으로 JSON.NET은 NServiceBus에 내부화되어 있습니다. 즉, 옵션을 설정하거나 API에 액세스 할 수 없습니다. 이것이 NewtonsoftSerializer가 존재하는 이유입니다. 여러분이 원하는 설정으로 프로젝트에있는 외부 JSON.NET 패키지를 사용할 수 있습니다. –