2010-11-23 5 views
0

У меня есть приложение Windows, доступ к внутреннему серверу и создание файла установки на основе пользовательского запроса из приложения Front End.Обновлять сетку автоматически при изменении таблицы в DB

1) Когда мы запрашиваем сервер для создания файла установки из приложения Front End, мы добавим детали в таблицу. (Req id = "101", Status = "Started" и т. Д.) и отобразили эти записи в сетке.

2) Мы обрабатываем запрос с сервера на основе FIFO (Queue) и создаем файл установки. После создания установочного файла мы обновим статус таблицы = «Завершено».

Проблема: после обновления статуса запроса в таблице (Выполнено на сервере) нам необходимо обновить Grid в приложении Front End.

Я не хочу помещать таймер в форму для обновления источника данных. Есть ли другой способ достичь этого?

Мои данные считыванием Постулаты в моей программе C#

public DataTable GetCustomPatchGridDatasource(string Requesteduser) 
     { 
      try 
      { 
       dbConn = new DBConnection(); 
       myconn = dbConn.CreateConnection(); 
       myCommand = new SqlCommand(); 
       myCommand.CommandText = "sp_Patch_GetPatchDetails"; 
       myCommand.CommandType = CommandType.StoredProcedure; 
       myCommand.Parameters.Add(new SqlParameter("@RequestedUserEmail", Requesteduser)); 
       myCommand.Connection = myconn; 
       myDatatadapter = new SqlDataAdapter(myCommand); 
       datatable = new DataTable(); 
       myDatatadapter.Fill(datatable); 
       dbConn.CloseConnection(); 
       return datatable; 
      } 
      catch (Exception ex) 
      { 
       dbConn.CloseConnection(); 
       MessageBox.Show(ex.Message, "Message"); 
       return null; 
      } 
     } 

ответ

0

Использование INotifyPropertyChanged событий.

0

Вы можете использовать триггер для вывода факта новой строки в специальную таблицу журналов журналов. Затем вы можете создать веб-службу, которая возвращает true или false, если в этой таблице журналов журнала есть новые строки. После обработки новых строк вы можете удалить их и т. Д. Вы можете использовать jQuery с таймером для вызова ajax в свой веб-сервис, получить ответ и обновить свой контроль на основе того, что возвращает веб-сервис. Может быть, есть и более простые способы сделать это, но я не буду постоянно контролировать свою основную таблицу для новых строк из-за очевидных проблем с производительностью.

Смежные вопросы