
Alex Clark
11,656 PointsI've been stuck on step 2 for a day now and can't figure it out...please help!
using System; using System.IO; using System.Collections.Generic; using Newtonsoft.Json;
namespace Treehouse.CodeChallenges { public class Program { public static void Main(string[] arg) { }
public static WeatherForecast ParseWeatherForecast(string[] values)
{
var weatherForecast = new WeatherForecast();
weatherForecast.WeatherStationId = values[0];
DateTime timeOfDay;
if (DateTime.TryParse(values[1], out timeOfDay))
{
weatherForecast.TimeOfDay = timeOfDay;
}
Condition condition;
if (Enum.TryParse(values[2], out condition))
{
weatherForecast.Condition = condition;
}
int temperature;
if (int.TryParse(values[3], out temperature))
{
weatherForecast.Temperature = temperature;
}
double precipitation;
if (double.TryParse(values[4], out precipitation))
{
weatherForecast.PrecipitationChance = precipitation;
}
if (double.TryParse(values[5], out precipitation))
{
weatherForecast.PrecipitationAmount = precipitation;
}
return weatherForecast;
}
public static List<WeatherForecast> DeserializeWeather(string fileName)
{
var weatherForecasts = new List<WeatherForecast>();
using (var reader = new StreamReader(fileName))
using (var jsonReader = new JsonTextReader(reader))
{
var serializer = new JsonSerializer();
weatherForecasts = serializer.Deserialize<List<WeatherForecast>>(jsonReader);
}
return weatherForecasts;
}
public static void SerializeWeatherForecasts(List<WeatherForecast> weatherForecasts, string fileName)
{
var serializer = new JsonSerializer();
using(var writer = new StreamWriter(fileName))
using(var jsonWriter = new JsonTextWriter(writer))
{
var serializer = new JsonSerializer();
serializer.Serialize(jsonWriter, weatherForecasts);
}
return weatherForecasts;
}
}
}
using System;
using System.IO;
using System.Collections.Generic;
using Newtonsoft.Json;
namespace Treehouse.CodeChallenges
{
public class Program
{
public static void Main(string[] arg)
{
}
public static WeatherForecast ParseWeatherForecast(string[] values)
{
var weatherForecast = new WeatherForecast();
weatherForecast.WeatherStationId = values[0];
DateTime timeOfDay;
if (DateTime.TryParse(values[1], out timeOfDay))
{
weatherForecast.TimeOfDay = timeOfDay;
}
Condition condition;
if (Enum.TryParse(values[2], out condition))
{
weatherForecast.Condition = condition;
}
int temperature;
if (int.TryParse(values[3], out temperature))
{
weatherForecast.Temperature = temperature;
}
double precipitation;
if (double.TryParse(values[4], out precipitation))
{
weatherForecast.PrecipitationChance = precipitation;
}
if (double.TryParse(values[5], out precipitation))
{
weatherForecast.PrecipitationAmount = precipitation;
}
return weatherForecast;
}
public static List<WeatherForecast> DeserializeWeather(string fileName)
{
var weatherForecasts = new List<WeatherForecast>();
using (var reader = new StreamReader(fileName))
using (var jsonReader = new JsonTextReader(reader))
{
var serializer = new JsonSerializer();
weatherForecasts = serializer.Deserialize<List<WeatherForecast>>(jsonReader);
}
return weatherForecasts;
}
public static void SerializeWeatherForecasts(List<WeatherForecast> weatherForecasts, string fileName)
{
var serializer = new JsonSerializer();
using(var writer = new StreamWriter(fileName))
using(var jsonWriter = new JsonTextWriter(writer))
{
var serializer = new JsonSerializer();
serializer.Serialize(jsonWriter, weatherForecasts);
}
return weatherForecasts;
}
}
}
using System;
using Newtonsoft.Json;
namespace Treehouse.CodeChallenges
{
public class WeatherForecast
{
[JsonProperty(PropertyName = "weather_station_id")]
public string WeatherStationId { get; set; }
[JsonProperty(PropertyName = "time_of_day")]
public DateTime TimeOfDay { get; set; }
public Condition Condition { get; set; }
public int Temperature { get; set; }
[JsonProperty(PropertyName = "precipitation_chance")]
public double PrecipitationChance { get; set; }
[JsonProperty(PropertyName = "precipitation_amount")]
public double PrecipitationAmount { get; set; }
}
public enum Condition
{
Rain,
Cloudy,
PartlyCloudy,
PartlySunny,
Sunny,
Clear
}
}
Eric M
11,495 PointsEric M
11,495 PointsHi Alex, sorry I don't have the time to go over this now. Please check out the previous threads where people have asked for help on this challenge https://teamtreehouse.com/community/code-challenge:13812 I'm sure you'll find some useful examples there.