Ошибка: не содержит статический метод Main() - C#

Узнай цену своей работы

Формулировка задачи:

Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.IO;
  6. using System.Net;
  7.  
  8. namespace Client1Sharp
  9. {
  10. public class Ftp{
  11.  
  12. private string password;
  13. private string Host;
  14. private string userName;
  15. private int bufferSize = 1024;
  16. public bool Passive = true;
  17. public bool Binary = true;
  18. public bool EnableSsl = false;
  19. public bool Hash = false;
  20. public Ftp(string Host, string userName, string password) {
  21. this.Host = Host;
  22. this.userName = userName;
  23. this.password = password;
  24. }
  25. public string ChangeWorkingDirectory(string path)
  26. {
  27. Host = combine(Host, path);
  28. return PrintWorkingDirectory();
  29. }
  30. public string DeleteFile(string fileName)
  31. {
  32. var request = createRequest(combine(Host, fileName), WebRequestMethods.Ftp.DeleteFile);
  33. return getStatusDescription(request);
  34. }
  35. public string DownloadFile(string source, string dest)
  36. {
  37. var request = createRequest(combine(Host, source), WebRequestMethods.Ftp.DownloadFile);
  38. byte[] buffer = new byte[bufferSize];
  39. using (var response = (FtpWebResponse)request.GetResponse())
  40. {
  41. using (var stream = response.GetResponseStream())
  42. {
  43. using (var fs = new FileStream(dest, FileMode.OpenOrCreate))
  44. {
  45. int readCount = stream.Read(buffer, 0, bufferSize);
  46. while (readCount > 0)
  47. {
  48. if (Hash)
  49. Console.Write("#");
  50. fs.Write(buffer, 0, readCount);
  51. readCount = stream.Read(buffer, 0, bufferSize);
  52. }
  53. }
  54. }
  55. return response.StatusDescription;
  56. }
  57. }
  58. public DateTime GetDateTimestamp(string fileName)
  59. {
  60. var request = createRequest(combine(Host, fileName), WebRequestMethods.Ftp.GetDateTimestamp);
  61. using (var response = (FtpWebResponse)request.GetResponse())
  62. {
  63. return response.LastModified;
  64. }
  65. }
  66. public long GetFileSize(string fileName)
  67. {
  68. var request = createRequest(combine(Host, fileName), WebRequestMethods.Ftp.GetFileSize);
  69. using (var response = (FtpWebResponse)request.GetResponse())
  70. {
  71. return response.ContentLength;
  72. }
  73. }
  74. public string[] ListDirectory()
  75. {
  76. var list = new List<string>();
  77. var request = createRequest(WebRequestMethods.Ftp.ListDirectory);
  78. using (var response = (FtpWebResponse)request.GetResponse())
  79. {
  80. using (var stream = response.GetResponseStream())
  81. {
  82. using (var reader = new StreamReader(stream, true))
  83. {
  84. while (!reader.EndOfStream)
  85. {
  86. list.Add(reader.ReadLine());
  87. }
  88. }
  89. }
  90. }
  91. return list.ToArray();
  92. }
  93. public string[] ListDirectoryDetails()
  94. {
  95. var list = new List<string>();
  96. var request = createRequest(WebRequestMethods.Ftp.ListDirectoryDetails);
  97. using (var response = (FtpWebResponse)request.GetResponse())
  98. {
  99. using (var stream = response.GetResponseStream())
  100. {
  101. using (var reader = new StreamReader(stream, true))
  102. {
  103. while (!reader.EndOfStream)
  104. {
  105. list.Add(reader.ReadLine());
  106. }
  107. }
  108. }
  109. }
  110. return list.ToArray();
  111. }
  112. public string MakeDirectory(string directoryName)
  113. {
  114. var request = createRequest(combine(Host, directoryName), WebRequestMethods.Ftp.MakeDirectory);
  115. return getStatusDescription(request);
  116. }
  117. public string PrintWorkingDirectory()
  118. {
  119. var request = createRequest(WebRequestMethods.Ftp.PrintWorkingDirectory);
  120. return getStatusDescription(request);
  121. }
  122. public string RemoveDirectory(string directoryName)
  123. {
  124. var request = createRequest(combine(Host, directoryName), WebRequestMethods.Ftp.RemoveDirectory);
  125. return getStatusDescription(request);
  126. }
  127. public string Rename(string currentName, string newName)
  128. {
  129. var request = createRequest(combine(Host, currentName), WebRequestMethods.Ftp.Rename);
  130. request.RenameTo = newName;
  131. return getStatusDescription(request);
  132. }
  133. public string UploadFile(string source, string destination)
  134. {
  135. var request = createRequest(combine(Host, destination), WebRequestMethods.Ftp.UploadFile);
  136. using (var stream = request.GetRequestStream())
  137. {
  138. using (var fileStream = System.IO.File.Open(source, FileMode.Open))
  139. {
  140. int num;
  141. byte[] buffer = new byte[bufferSize];
  142. while ((num = fileStream.Read(buffer, 0, buffer.Length)) > 0)
  143. {
  144. if (Hash)
  145. Console.Write("#");
  146. stream.Write(buffer, 0, num);
  147. }
  148. }
  149. }
  150. return getStatusDescription(request);
  151. }
  152. public string UploadFileWithUniqueName(string source)
  153. {
  154. var request = createRequest(WebRequestMethods.Ftp.UploadFileWithUniqueName);
  155. using (var stream = request.GetRequestStream())
  156. {
  157. using (var fileStream = System.IO.File.Open(source, FileMode.Open))
  158. {
  159. int num;
  160. byte[] buffer = new byte[bufferSize];
  161. while ((num = fileStream.Read(buffer, 0, buffer.Length)) > 0)
  162. {
  163. if (Hash)
  164. Console.Write("#");
  165. stream.Write(buffer, 0, num);
  166. }
  167. }
  168. }
  169. using (var response = (FtpWebResponse)request.GetResponse())
  170. {
  171. return Path.GetFileName(response.ResponseUri.ToString());
  172. }
  173. }
  174. private FtpWebRequest createRequest(string method)
  175. {
  176. return createRequest(Host, method);
  177. }
  178. private FtpWebRequest createRequest(string uri, string method)
  179. {
  180. var r = (FtpWebRequest)WebRequest.Create(uri);
  181. r.Credentials = new NetworkCredential(userName, password);
  182. r.Method = method;
  183. r.UseBinary = Binary;
  184. r.EnableSsl = EnableSsl;
  185. r.UsePassive = Passive;
  186. return r;
  187. }
  188. private string getStatusDescription(FtpWebRequest request)
  189. {
  190. using (var response = (FtpWebResponse)request.GetResponse())
  191. {
  192. return response.StatusDescription;
  193. }
  194. }
  195. private string combine(string path1, string path2)
  196. {
  197. return Path.Combine(path1, path2).Replace("", "/");
  198. }
  199. }
  200. }

Решение задачи: «Ошибка: не содержит статический метод Main()»

textual
Листинг программы
  1. namespace Client1Sharp
  2. {  
  3.  class Program
  4.     {
  5.         static void Main(string[] args)
  6.         {

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.455 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы