>>> public static void Main() >>> { >>> StringBuilder loStringBuilder = new StringBuilder(); >>> >>> // this part outside the loop - even at class level if possible >>> >>> NetworkCredential credentials = new System.Net.NetworkCredential(cUsername, cPassword); >>> // end part >>> >>> Uri uri = new Uri(lcURI); >>> >>> // FTP setup >>> var loFtpWebRequest = System.Net.FtpWebRequest.Create(uri); >>> loFtpWebRequest.Credentials = credentials; >>> loFtpWebRequest.Method = System.Net.WebRequestMethods.Ftp.ListDirectoryDetails; >>> >>> // If we use FTP/SSL (AUTH SSL) >>> // If ( nNoFTPProtocol == 2) >>> // loFtpWebRequest.EnableSsl = true; >>> >>> >>> using ( var loFtpWebResponse = loFtpWebRequest.GetResponse() ) >>> { >>> using ( var s = loFtpWebResponse.GetResponseStream()) >>> { >>> using( var loStreamReader = new StreamReader(s) ) >>> { >>> // Load the files into the string builder >>> loStringBuilder.Append(loStreamReader.ReadToEnd()); >>> } >>> } >>> } >>> Console.WriteLine("{0}", loStringBuilder.ToString()); >>> Console.ReadLine(); >>> >>> } >>> >>>Not particularly relevant but the above reminded me that you can do this:
using (var loFtpWebResponse = loFtpWebRequest.GetResponse()) >>using (var s = loFtpWebResponse.GetResponseStream()) >>using (var loStreamReader = new StreamReader(s)) >> { >> // Load the files into the string builder >> loStringBuilder.Append(loStreamReader.ReadToEnd()); >> }>>Don't know if I regard it as more readable or not?
> using ( var loFtpWebResponse = loFtpWebRequest.GetResponse() ) > using ( var s = loFtpWebResponse.GetResponseStream()) > using( var loStreamReader = new StreamReader(s) ) > // Load the files into the string builder > loStringBuilder.Append(loStreamReader.ReadToEnd()); >>