У меня есть выигрышная форма с одной кнопкой «start», и когда я нажимаю на нее, начинаю читать .txt-файл по строкам и отправлять запросы на сервер. Мой вопрос: Как я могу сделать, когда я нажимаю «начать», чтобы читать 50 строк из файла, а затем остановись и дождитесь очередного щелчка «начать». Нанесение единственного возможного решения здесь? Это моя кнопка:C# winforms and threads
private void btnStart_Click(object sender, EventArgs e)
{
List<string> List = LoadFromFile("FILE");
int dialogid = 0;
foreach (string g in List)
{
dialogid++;
Dictionary<string, string> parameters = new Dictionary<string, string>();
parameters.Add("number", g);
parameters.Add("dialogid", dialogid.ToString());
if (InvokeService(this.tbWebServiceURL.Text, parameters) == false)
{
MessageBox.Show("ERROR!", "ERROR");
return;
}
}
А вот мой пост запрос:
private bool InvokeService(string ServiceURL, Dictionary<string, string> parameters)
{
try
{
string data = "";
int cnt = 0;
byte[] dataStream = Encoding.UTF8.GetBytes(data);
WebRequest webRequest = WebRequest.Create("URL");
webRequest.Method = "POST";
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.ContentLength = dataStream.Length;
foreach (KeyValuePair<string, string> kvk in parameters)
{
webRequest.Headers.Add(kvk.Key, kvk.Value);
}
WebResponse response = webRequest.GetResponse();
Stream dataStreamResponse = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStreamResponse);
string responseFromServer = reader.ReadToEnd();
Console.WriteLine(responseFromServer);
reader.Close();
dataStreamResponse.Close();
response.Close();
Самое главное здесь не читается весь файл с одним нажатием на «старт». Должен ждать еще один «старт». Прочитайте 50 строк и ждите, чтобы щелкнуть по «началу», чтобы прочитать секунды 50 строк. Надеюсь, теперь более ясно.
Не могли бы вы использовать 'while' цикл? – Nick
Вы все равно должны использовать потоки ... вы не хотите, чтобы ваш пользовательский интерфейс блокировался во время ожидания вашего файла. – Ian
Я подозреваю, что этот файл не является узким местом. –