internal async Task ShowShimDGV(int iworkdate, DataGridView dgvShim, int iworkno = -1) { try { BeginInvoke((Action)(() => dgvShim.Rows.Clear())); using (GEN2_MEASUREDBEntities db = new GEN2_MEASUREDBEntities()) { List <TB_FrontShim> lstShim = await db.TB_FrontShim.SqlQuery($"Select * from TB_FrontShim " + $" Order by Work_No Asc").ToListAsync(); for (int i = 0; i < lstShim.Count; i++) { if (lstShim[i].ShimG4_Val != null) { List <string> addrow = new List <string>(); addrow.Add(lstShim[i].Work_No.ToString()); addrow.Add(lstShim[i].ShimG4_Val.ToString()); BeginInvoke((Action)(() => { dgvShim.AddGridrow(addrow.ToArray()); })); } } if (iworkno != -1) { await Task.Run(() => FindShim(iworkno, dgvShim)); } } } catch (Exception ex) { StackTrace trace = new StackTrace(ex, true); StackFrame stackFrame = trace.GetFrame(trace.FrameCount - 1); int lineNumber = stackFrame.GetFileLineNumber(); I_Home.ErrorLog(($"{dgvShim.Tag}({lineNumber}) : {ex.ToString()}")); } }