Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

C# C# Streams and Data Processing Parsing Data Working with DateTime

Hamzah Iqbal
seal-mask
.a{fill-rule:evenodd;}techdegree
Hamzah Iqbal
Full Stack JavaScript Techdegree Student 11,145 Points

Did you forget to assign the TimeOfDay property?

What am I missing? I'm so lost and confused.

Program.cs
using System;
using System.IO;

namespace Treehouse.CodeChallenges
{
    public class Program
    {

        public static void Main(string[] arg)
        { 
        }

        /*
        1. Create a static method named ParseWeatherForecast that takes a string[] parameter named values 
        and returns a WeatherForecast.
        */

        public static WeatherForecast ParseWeatherForecast(string[] values)
        {

         /*
         2. Instantiate a WeatherForecast variable named weatherForecast and 
            assign the appropriate value in the values array to the WeatherStationId property.
        */

            var weatherForecast = new WeatherForecast();
            weatherForecast.WeatherStationId = values[0];

            /*
            3. return the weatherForecast in the new method
            */

            return weatherForecast;


            /*
            5. Back in the ParseWeatherForecast method, add a new variable named timeOfDay to hold a DateTime value. 
            */


            DateTime timeOfDay;
            DateTime.TryParse(values[1], out timeOfDay);


         }



    }
}
WeatherForecast.cs
using System;

/* Sample CSV Data 

weather_station_id,time_of_day,condition,temperature,precipitation_chance,precipitation_amount
HGKL8Q,06/11/2016 0:00,Rain,53,0.3,0.03
HGKL8Q,06/11/2016 6:00,Cloudy,56,0.08,0.01
HGKL8Q,06/11/2016 12:00,PartlyCloudy,70,0,0
HGKL8Q,06/11/2016 18:00,Sunny,76,0,0
HGKL8Q,06/11/2016 19:00,Clear,74,0,0
*/

namespace Treehouse.CodeChallenges
{
    public class WeatherForecast
    {
        public string WeatherStationId { get; set; }
        public DateTime TimeOfDay { get; set; }

    }
}

1 Answer

Steven Parker
Steven Parker
231,271 Points

As the hint suggests, you forgot to assign weatherForecast.TimeOfDay using the parsed value. But there's two other issues also:

  • the assignment should only occur if the "TryParse" was successful
  • all the method code needs to occur before the return statement