C# C# Streams and Data Processing Streaming Data on the Net WebClient

Scott George
Scott George
13,942 Points

Error: A local variable named `stream' cannot be declared in this scope ...

I',m getting this Error "A local variable named stream' cannot be declared in this scope because it would give a different meaning tostream', which is already used in a `parent or current' scope to denote something else Compilation failed: 1 error(s), 0 warnings"

Any ideas? Thanks

Program.cs
using System;
using System.IO;
using System.Net;

namespace Treehouse.CodeChallenges
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(GetTreehouseHome());
        }

        public static string GetTreehouseHome()
        {
            string treehouse = "";
            // Put code here
            using (WebClient client = new WebClient ());
                byte[] treehouseBytes = webClient.DownloadData("https://www.teamtreehouse.com");
            using(var stream = new MemoryStream(treehouseBytes)) using(var stream = new StreamReader(stream))



            return treehouse;
        }
    }
}

1 Answer

Allan Clark
MOD
Allan Clark
Treehouse Moderator 10,772 Points

The error message is telling you that you have 2 variables declared as 'stream'. There are also some other syntax issues, for example putting a semi-colon after the webclient using statement immediately disposes of it and wont be ready to use. The following syntax should get you ready for the next challenge, let me know if you have any questions about what is there.

        public static string GetTreehouseHome()
        {
            string treehouse = "";
            // Put code here
            using(var webClient = new WebClient()){
                byte[] treehouseBytes = webClient.DownloadData("https://www.teamtreehouse.com");

                using(var stream = new MemoryStream(treehouseBytes)) 
                using(var reader = new StreamReader(stream))
                {

                }

            }
            return treehouse;
        }