리피터가 Html 테이블로 구성되었습니다. 미리보기는 다음과 같습니다.업데이트 패널, 업데이트 방법으로 컨트롤이 업데이트되지 않습니다.
| No | Name | Status |
--------------------------------
| 1. | Process A | In Progress |
| 2. | Process B | In Progress |
| 3. | Process C | In Progress |
| 4. | Process D | In Progress |
...
| n. | Process N | In Progress |
--------------------------------
리피터를 업데이트 패널에 배치했습니다.
버튼을 클릭하면 양식에서 이러한 보내기 기능을 호출합니다. 이 함수는 각 행마다 반복되고 상태 텍스트를 "진행 중"에서 "보낸"으로 설정합니다. 프로세스가 약 2 초라고 가정합니다. 상태 텍스트가 할당 된 후 UpdatePanel.Update()를 통해 Repeater의 상태 텍스트를 업데이트하려고하지만 문제점이 업데이트되지 않았습니다. 함수가 완료된 후 업데이트됩니다.
센드 기능은 다음과 같이이다 :
protected void btnSend_Clicked(object sender, EventArgs e)
{
foreach (RepeaterItem item in rptData.Items)
{
UpdatePanel upnlStatus = (UpdatePanel)item.FindControl("upnlStatus");
Literal litStatus = (Literal)item.FindControl("litStatus");
System.Threading.Thread.Sleep(2000);
litStatusText = "Sent";
upnlStatus.Update();
}
}
내 질문이 일을 할 수있는 가장 좋은 방법은 무엇입니까? 업데이트 패널은 이러한 종류의 실시간 업데이트를 지원합니까? 미리 감사드립니다.
감사합니다. @ DavRob60 :) 하지만 WebService없이이 작업을 수행 할 수 있습니까? C#에서 비동기 메서드에 대해 들었습니다. C# Async 서버 메서드를 통해이 부분 렌더링을 수행 할 수 있습니까? 감사합니다. –
@WillyLazuardi 이것은 단순화되었지만 "비동기 서버 메소드"는 웹 서비스의 일부입니다. 세부 사항을 설명하는 데 많은 시간이 걸릴 것입니다. – DavRob60