2013-08-14 2 views
0

실제로 Excel 파일을 가져오고 DB에서 SqlBulkCopy 까지 레코드를 저장하고 있으며 모든 것이 잘됩니다. SqlBulkCopy을 통해 데이터를 저장하는 동안 ProgressBar을 표시해야합니다.ASP.Net의 SqlBulkCopy 및 ProgressBar

내 코드는 다음과 같습니다

SBC.WriteToServer(dsExcel); 
SBC.SqlRowsCopied += new SqlRowsCopiedEventHandler(OnSqlRowsCopied); 
SBC.NotifyAfter = 1; 

SqlRowsCopied 이벤트 :

private static void OnSqlRowsCopied(object sender, SqlRowsCopiedEventArgs e) 
{ 
//here i tried calling my progressbar. But I'm unable to call it.     
} 

답변

2

나는 당신이 개체를 인스턴스화하고 WriteToServer 방법 호출하기 전에 직후에 그 값을 설정할 필요가 있다고 생각 :

및 그 외에도 OnSqlRowsCopi 에드 이벤트 핸들러 :

private static void OnSqlRowsCopied(object sender, SqlRowsCopiedEventArgs e) 
{ 
    Console.WriteLine("Copied {0} so far...", e.RowsCopied); 
} 
+0

답장을 보내 주셔서 감사합니다. 사실 이제 내 이벤트가 실행 중입니다. 하지만 ProgressBar의 ID를 가져올 수 없습니다. – RealSteel

+0

실제로이 코드가 "return sqlcpy.GetRowsCopied();" 그렇지? 'sqlcpy'에 대한 메소드가 없습니다. – RealSteel