public static void Run()
        {
            string jsonString;

            // Serialize to create input JSON
            var weatherForecast  = WeatherForecastFactories.CreateWeatherForecast();
            var serializeOptions = new JsonSerializerOptions
            {
                WriteIndented = true
            };

            serializeOptions.WriteIndented = true;
            jsonString = JsonSerializer.Serialize(weatherForecast, serializeOptions);
            Console.WriteLine($"JSON input:\n{jsonString}\n");

            // Deserialize without converter
            // Properties are JsonElement type.
            WeatherForecastWithObjectProperties weatherForecastWithObjectProperties = JsonSerializer.Deserialize <WeatherForecastWithObjectProperties>(jsonString);

            weatherForecastWithObjectProperties.DisplayPropertyValues();

            // <SnippetRegister>
            var deserializeOptions = new JsonSerializerOptions();

            deserializeOptions.Converters.Add(new ObjectToInferredTypesConverter());
            // </SnippetRegister>
            weatherForecastWithObjectProperties = JsonSerializer.Deserialize <WeatherForecastWithObjectProperties>(jsonString, deserializeOptions);
            weatherForecastWithObjectProperties.DisplayPropertyValues();
        }
Esempio n. 2
0
 public static WeatherForecastWithObjectProperties CreateWeatherForecastWithObjectProperties()
 {
     var weatherForecast = new WeatherForecastWithObjectProperties
     {
         Date = DateTime.Parse("2019-08-01"),
         TemperatureCelsius = 25,
         Summary = "Hot"
     };
     return weatherForecast;
 }
Esempio n. 3
0
 public static void DisplayPropertyValues(this WeatherForecastWithObjectProperties wf)
 {
     Utilities.DisplayPropertyValues(wf);
     Console.WriteLine();
 }