/// <summary> /// Refreshes all pending Delete/Update entity objects of current DataContext according to the specified mode. /// Nothing will do on Pending Insert entity objects. /// </summary> /// <param name="context"></param> /// <param name="refreshMode">A value that specifies how optimistic concurrency conflicts are handled.</param> public void RefreshPendingChanges(DataContext context, RefreshMode refreshMode) { ChangeSet changeSet = context.GetChangeSet(); if (changeSet != null) { context.Refresh(refreshMode, changeSet.Deletes); context.Refresh(refreshMode, changeSet.Updates); } }
public bool Edit(GenericEntityType entity) { try { if (entity == null) { _Logger.Error(typeof(GenericEntityType).Name + " is null to EDIT!"); return(false); } _DataContext.GetTable <GenericEntityType>().Attach(entity); // The foll stmt causes a refresh of the identity cache _DataContext.Refresh(RefreshMode.KeepCurrentValues, entity); // This stmt does an update on only the changed fields if (_Flag) { _DataContext.SubmitChanges(ConflictMode.ContinueOnConflict); } return(true); } catch (ChangeConflictException e) { _Logger.Error(typeof(GenericEntityType).Name + " could not be EDITED...Confict occured -- " + e); return(false); } }
/// <summary> /// Refreshes all pending Delete/Update entity objects of current DataContext according to the specified mode. /// Nothing will do on Pending Insert entity objects. /// </summary> /// <param name="context"></param> /// <param name="refreshMode">A value that specifies how optimistic concurrency conflicts are handled.</param> public static void RefreshPendingChanges(this DataContext context, RefreshMode refreshMode) { ChangeSet changeSet = context.GetChangeSet(); if (changeSet != null) { context.Refresh(refreshMode, changeSet.Deletes); context.Refresh(refreshMode, changeSet.Updates); } }
public bool UpdateGeneric <T>(List <T> entity) where T : class { _cntxt = new DataContext(_connStr); System.Data.Common.DbTransaction tran = null; try { if (_cntxt.Connection.State == System.Data.ConnectionState.Closed) { _cntxt.Connection.Open(); } tran = _cntxt.Connection.BeginTransaction(); _cntxt.Transaction = tran; _cntxt.GetTable <T>().AttachAll <T>(entity); _cntxt.Refresh(RefreshMode.KeepCurrentValues, entity); _cntxt.SubmitChanges(); tran.Commit(); _cntxt.Connection.Close(); return(true); } catch (Exception e) { tran.Rollback(); _cntxt.Connection.Close(); DBEvents.LogException(e, "UpdateGeneric<T>(List<T> entity)", 0); return(false); } }
virtual public string Update <T>(T bllTable) where T : class, IBaseTable { using (DataContext dc = new DataContext(connection)) { bool isInsert = dc.GetTable <T>().Count(p => p.ID == bllTable.ID) == 0; if (isInsert) { dc.GetTable <T>().InsertOnSubmit(bllTable); } else { dc.GetTable <T>().Attach(bllTable, false); dc.Refresh(RefreshMode.KeepCurrentValues, bllTable); } try { dc.SubmitChanges(); } catch (Exception e) { return(e.Message); } return(string.Empty); } }
private void deleteActivityButton_Click(object sender, EventArgs e) { int aktivitaetId; DataGridViewSelectedRowCollection selectedRow; if (aktivitaetenDataGrid.SelectedRows.Count == 1 && aktivitaetenDataGrid.SelectedRows[0].Cells[0].Value != null) { selectedRow = aktivitaetenDataGrid.SelectedRows; aktivitaetId = Int32.Parse(selectedRow[0].Cells[0].Value.ToString()); } else { return; } //Connect auf Tabelle inkl. dem Mapping Table <Aktivitaet> my_inhalt = dbContext.GetTable <Aktivitaet>(); //Abfrage var zu_loeschen = from aktivitaet in my_inhalt where aktivitaet.aktivitaetId == aktivitaetId select aktivitaet; //Delete on submit aufrufen -> ein element löschen Aktivitaet entity = zu_loeschen.First(); dbContext.Refresh(System.Data.Linq.RefreshMode.KeepChanges, entity); my_inhalt.DeleteOnSubmit(entity); //Aenderung auf DB auslösen dbContext.SubmitChanges(); // datagrid neu befüllen loadAktivitaetenDataGrid(); }
/// <summary> /// Loads the Current Item /// </summary> private void LoadCurrentItem() { if (CurrentItem == null) { return; } examGridPanel.Visible = true; ValidateItem(); //set selected on menu DataUri[] dataUris = new DataUri[1]; dataUris[0] = new DataUri(CurrentItem.ID); TreeviewDataContext.DefaultItem = CurrentItem.ID.ToString(); TreeviewDataContext.Folder = CurrentItem.Paths.FullPath; TreeviewDataContext.Selected = dataUris; TreeviewDataContext.AddSelected(new DataUri(CurrentItem.ID)); TreeviewDataContext.Refresh(); //reset form SetDisplay(); //make sure we are on a velir image IFieldSuiteImage fieldSuiteImage = FieldSuiteImageFactory.GetFieldSuiteImage(CurrentItem); if (fieldSuiteImage != null) { CreateContentEditor(CurrentItem); } }
private void anulujButton_Click(object sender, EventArgs e) { if (kontrahent != null && kontrahent.EntityState == System.Data.EntityState.Modified) { DataContext.Refresh(System.Data.Objects.RefreshMode.StoreWins, kontrahent); } }
private void OnAddDiploma() { try { DataContext.Add_Diploma( sudent: AddDiplomaVisibleControl.New.Sudent_id , teacher: AddDiplomaVisibleControl.New.Teacher_id , date: AddDiplomaVisibleControl.New.date , data: AddDiplomaVisibleControl.New.data , documentation: AddDiplomaVisibleControl.New.documentation , statement: AddDiplomaVisibleControl.New.statement , annotation: AddDiplomaVisibleControl.New.annotation , comment: AddDiplomaVisibleControl.New.comment ); DataContext.Refresh(RefreshMode.OverwriteCurrentValues, DataContext.Diploms); ViewDiploms = new ObservableCollection <Diploms>(DataContext.Diploms.AsParallel()); AddDiplomaVisibleControl.New = new Diploms(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
public static void RollBack(this DataContext dataContext) { ChangeSet pendingChanges = dataContext.GetChangeSet(); foreach (var insertion in pendingChanges.Inserts) { dataContext.GetTable(insertion.GetType()).InsertOnSubmit(insertion); } foreach (var deletion in pendingChanges.Deletes) { dataContext.GetTable(deletion.GetType()).DeleteOnSubmit(deletion); } foreach (var update in pendingChanges.Updates) { dataContext.Refresh(RefreshMode.OverwriteCurrentValues, update); IPropertyChangedNotifier updateNotify = update as IPropertyChangedNotifier; foreach (PropertyInfo propertyInfo in update.GetType().GetProperties()) { updateNotify.NotifyPropertyChanged(propertyInfo.Name); } } }
internal bool SaveFood(Food food) { using (DataContext) { try { if (!DataContext.Foods.Contains(food)) { food.CreatedDate = DateTime.Now; food.IsTemporary = true; DataContext.Foods.InsertOnSubmit(food); } else { food.IsTemporary = false; DataContext.Foods.Attach(food); DataContext.Refresh(RefreshMode.KeepCurrentValues, food); } food.ModifiedDate = DateTime.Now; DataContext.SubmitChanges(); return(true); } catch { return(false); } } }
/// <summary> /// 重写Update方法 /// </summary> /// <param name="entity"></param> /// <returns></returns> public override Entity.SYS_MenuList Update(Entity.SYS_MenuList entity) { using (DataContext cxt = ContextFactory.CreateContext()) { try { Table <FineOffice.Entity.SYS_MenuList> authority = cxt.GetTable <FineOffice.Entity.SYS_MenuList>(); authority.Attach(entity, true); if (entity.ParentID != 0) { Entity.SYS_MenuList temp = authority.Where(d => d.ID == entity.ParentID).FirstOrDefault(); if (temp == null) { throw new Exception("父级菜单不存在!"); } } cxt.SubmitChanges(ConflictMode.ContinueOnConflict); } catch (ChangeConflictException) { cxt.Refresh(RefreshMode.KeepChanges, entity); cxt.SubmitChanges(ConflictMode.FailOnFirstConflict); } catch (Exception ex) { throw new Exception(ex.Message); } return(entity); } }
/// <summary> /// Saves this instance. /// </summary> public void Save(bool mergeChanges = false) { if (mergeChanges) { _dataContext.Refresh(RefreshMode.KeepChanges, GetTable.ToArray()); } _dataContext.SubmitChanges(); }
public void DeleteUserAsync_Test() { var user = dataContext.Set <User>().FirstOrDefault(); var userId = user.Id; _service.DeleteAsync(userId).GetAwaiter().GetResult(); dataContext.Refresh(user); Assert.IsTrue(user.Deleted); }
public void RefreshRepositoryStatus() { try { DataContext.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, DataContext.TaskInstances); DataContext.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues, DataContext.TaskSelections); } catch (Exception exception) { MessageObserver.Instance.SetMessage("Failed refresh entities { " + exception.ToString() + " }"); } }
/// <summary> /// Load root item treepicker /// </summary> private void LoadRootItem() { Item goalsItem = Sitecore.Context.ContentDatabase.GetItem(AnalyticsReference.System_MarketingCenter_Goals.Guid); if (goalsItem == null || Sitecore.Context.ClientPage.IsPostBack) { return; } rootItemDataContext.Root = goalsItem.Paths.FullPath; rootItemDataContext.Refresh(); }
protected void SaveChanges() { try { DataContext.SaveChanges(); } catch (OptimisticConcurrencyException e) { // Resolve the concurrency conflict by refreshing the // object context before re-saving changes. DataContext.Refresh(RefreshMode.ClientWins, EntitySet); DataContext.SaveChanges(); } } // End of function
/// <summary> /// Load Treepicker datacontext /// </summary> private void LoadDataContext() { if (SourceItem == null || Context.ClientPage.IsPostBack) { return; } DataUri[] dataUris = new DataUri[1]; dataUris[0] = new DataUri(SourceItem.ID); addItemDataContext.Root = SourceItem.Paths.FullPath; addItemDataContext.DefaultItem = SourceItem.ID.ToString(); addItemDataContext.Folder = SourceItem.Paths.FullPath; addItemDataContext.Selected = dataUris; addItemDataContext.AddSelected(new DataUri(SourceItem.ID)); addItemDataContext.Refresh(); }
/// <summary> /// Update specific record /// </summary> /// <param name="record"> Record instance</param> public void Update(T record) { using (DataContext db = new DataContext(connectionString)) { var results = db.GetTable <T>().Where(r => r.ID == record.ID); if (results.Any()) { // Иначе не хотело обновлять var ctx = new DataContext(connectionString); ctx.GetTable <T>().Attach(record); ctx.Refresh(RefreshMode.KeepCurrentValues, record); ctx.SubmitChanges(); } } }
public bool UpdateGeneric <T>(T entity) where T : class { bool sonuc = false; _cntxt = new DataContext(_connStr); try { if (_cntxt.Connection.State == System.Data.ConnectionState.Closed) { _cntxt.Connection.Open(); } var Table = _cntxt.GetTable <T>(); Table.Attach(entity); _cntxt.Refresh(RefreshMode.KeepCurrentValues, entity); _cntxt.SubmitChanges(); sonuc = true; _cntxt.Connection.Close(); } catch (Exception exp) { _cntxt.Connection.Close(); try { StackTrace stackTrace = new StackTrace(); MethodBase methodBase = stackTrace.GetFrame(1).GetMethod(); LogException(exp, "UpdateGeneric<T>(T entity) in " + methodBase.ReflectedType.Name + "." + methodBase.Name, 0); } catch { } sonuc = false; } finally { if (_cntxt.Connection.State == System.Data.ConnectionState.Open) { _cntxt.Connection.Close(); } } return(sonuc); }
public bool UpdateGeneric <T>(T entity) where T : class { bool sonuc = false; _cntxt = new DataContext(_connStr); System.Data.Common.DbTransaction tran = null; try { if (_cntxt.Connection.State == System.Data.ConnectionState.Closed) { _cntxt.Connection.Open(); } tran = _cntxt.Connection.BeginTransaction(); _cntxt.Transaction = tran; var Table = _cntxt.GetTable <T>(); Table.Attach(entity); _cntxt.Refresh(RefreshMode.KeepCurrentValues, entity); _cntxt.SubmitChanges(); sonuc = true; tran.Commit(); _cntxt.Connection.Close(); } catch (Exception exp) { tran.Rollback(); _cntxt.Connection.Close(); LogException(exp, "UpdateGeneric", -1); sonuc = false; } finally { if (_cntxt.Connection.State == System.Data.ConnectionState.Open) { _cntxt.Connection.Close(); } } return(sonuc); }
private void OnAddTeacher() { try { DataContext.Add_Teacher ( addTeacherVisibleControl.New.Pioples.lastname , addTeacherVisibleControl.New.Pioples.name , addTeacherVisibleControl.New.Pioples.patronymic ); DataContext.Refresh(RefreshMode.OverwriteCurrentValues, Teacher); Teacher = new ObservableCollection <Teacher>(DataContext.Teacher); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void OnAddStudent() { try { DataContext.Add_Student ( AddStudentVisibleControl.New.Pioples.lastname , AddStudentVisibleControl.New.Pioples.name , AddStudentVisibleControl.New.Pioples.patronymic , AddStudentVisibleControl.New.Group_id ); DataContext.Refresh(RefreshMode.OverwriteCurrentValues, DataContext.Student); Students = new ObservableCollection <Student>(DataContext.Student.AsParallel()); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
/// <summary> /// 重写Update方法 /// </summary> public override Entity.SYS_PageAuthority Update(Entity.SYS_PageAuthority entity) { using (DataContext cxt = ContextFactory.CreateContext()) { try { Table <FineOffice.Entity.SYS_PageAuthority> authority = cxt.GetTable <FineOffice.Entity.SYS_PageAuthority>(); authority.Attach(entity, true); cxt.SubmitChanges(ConflictMode.ContinueOnConflict); } catch (ChangeConflictException) { cxt.Refresh(RefreshMode.KeepChanges, entity); cxt.SubmitChanges(ConflictMode.FailOnFirstConflict); } catch (Exception ex) { throw new Exception(ex.Message); } return(entity); } }
public virtual bool UndoChanges() { UndoChangesOnClose = false; if (!IsReadOnly && DataSource != null) { if (DataSource is Enova.Business.Old.Core.IContextUndoChanges) { return(((Enova.Business.Old.Core.IContextUndoChanges)DataSource).UndoChanges(DataContext)); } else if (DataSource is Enova.Business.Old.Core.IUndoChanges) { return(((Enova.Business.Old.Core.IUndoChanges)DataSource).UndoChanges()); } else if (DataContext != null && DataSource.GetType().IsAssignableFrom(typeof(System.Data.Objects.DataClasses.EntityObject))) { DataContext.Refresh(System.Data.Objects.RefreshMode.StoreWins, DataSource); return(true); } } return(false); }
public bool UpdateGeneric <T>(List <T> entity) where T : class { _cntxt = new DataContext(_connStr); System.Data.Common.DbTransaction tran = null; try { if (_cntxt.Connection.State == System.Data.ConnectionState.Closed) { _cntxt.Connection.Open(); } tran = _cntxt.Connection.BeginTransaction(); _cntxt.Transaction = tran; _cntxt.GetTable <T>().AttachAll <T>(entity); _cntxt.Refresh(RefreshMode.KeepCurrentValues, entity); _cntxt.SubmitChanges(); tran.Commit(); _cntxt.Connection.Close(); return(true); } catch (Exception e) { tran.Rollback(); _cntxt.Connection.Close(); try { StackTrace stackTrace = new StackTrace(); MethodBase methodBase = stackTrace.GetFrame(1).GetMethod(); LogException(e, "UpdateGeneric<T>(List<T> entity) in " + methodBase.ReflectedType.Name + "." + methodBase.Name, 0); } catch { } return(false); } }
/// <summary> /// Intializes the complete button. /// </summary> public void IntializeCompleteButton() { bool canComplete = false; bool canEditIteminItemBrief = this.GetBL <InventoryBL>().CanEditIteminItemBrief(ItemBriefId, out canComplete); btnVerifyBeforeComplete.Enabled = !IsItemBriefReadOnly; Data.ItemBrief itemBrief = GetItemBrief(this.ItemBriefId); btnCompleteItem.Enabled = !IsItemBriefReadOnly; DataContext.Refresh(RefreshMode.StoreWins, itemBrief); bool isItemBriefCompleted = (itemBrief != null && itemBrief.ItemBriefStatusCodeId == Support.GetCodeIdByCodeValue("ItemBriefStatusCode", "COMPLETED")); btnCompleteItem.Visible = (!isItemBriefCompleted && (canEditIteminItemBrief || canComplete)); if (!canEditIteminItemBrief && canComplete) { btnCompleteItem.Text = "Complete"; } UpdateUpdatePanels(); }
private void RozrachunekEditForm_Load(object sender, EventArgs e) { terminComboBox.SelectedIndex = 0; terminGranicznyComboBox.SelectedIndex = 0; okresRozliczen.SetSpan(Enova.Business.Old.Controls.DateTimeSpanControl.SpanType.Year); if ((Enova.Business.Old.DB.Web.Operator.CurrentOperator.PrawaDostepu & AbakTools.Business.OperatorPrawaDostepu.Administrator) != Business.OperatorPrawaDostepu.Administrator) { blokadaCheckBox.Enabled = false; blokadaSprzCheckBox.Enabled = false; } else { blokadaCheckBox.Enabled = true; blokadaSprzCheckBox.Enabled = true; } if (DataSource != null) { if (DataSource.IDKontrahenta != null) { kontrahent = DataContext.Kontrahenci.Where(k => k.ID == DataSource.IDKontrahenta).FirstOrDefault(); if (kontrahent != null) { DataContext.Refresh(RefreshMode.StoreWins, kontrahent); blokadaSprzCheckBox.Refresh(); if (kontrahent.Windykacja != null) { } kontrahentBindingSource.DataSource = kontrahent; adresBindingSource.DataSource = kontrahent.Adres; adresKorespBindingSource.DataSource = kontrahent.AdresKorespondencyjny; loadRozrachunki(); } } } }
/// <summary> /// 快取 LINQ Query 的結果(僅適用於 LINQ to SQL 環境) /// 使用的的限制跟使用 SqlCacheDependency 的限制一樣 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="q"></param> /// <param name="dc">你的 LINQ to SQL DataContext</param> /// <param name="CacheId">Cache ID,需為每一個不同的 IQueryable 物件設定一個唯一的 ID</param> /// <returns></returns> public static List <T> LinqCache <T>(this IQueryable <T> q, DataContext dc, string CacheId) { List <T> objCache = (List <T>)System.Web.HttpRuntime.Cache.Get(CacheId); if (objCache == null) { #region 从数据库查找 ///////// 尚未快取,實做 new SqlCacheDependeny ////////// // 1. 透過 DataContext 取得連線字串 string connStr = dc.Connection.ConnectionString; // 2. 透過 DataContext 與 IQueryable 物件取得 SqlCommand 物件 SqlCommand sqlCmd = dc.GetCommand(q) as SqlCommand; // 3. 建立要給 SqlCacheDependency 使用的 SqlConnection 物件 using (SqlConnection conn = new SqlConnection(connStr)) { conn.Open(); // 4. 建立要給 SqlCacheDependency 使用的 SqlCommand 物件 using (SqlCommand cmd = new SqlCommand(sqlCmd.CommandText, conn)) { // 5.0 將 sqlCmd 中的所有參數傳遞給 cmd 物件 foreach (System.Data.Common.DbParameter dbp in sqlCmd.Parameters) { cmd.Parameters.Add(new SqlParameter(dbp.ParameterName, dbp.Value)); } // 5.1 啟用資料庫的 Query notifications 功能 SqlCacheDependencyAdmin.EnableNotifications(connStr); // 5.2 取得要進行異動通知的表格名稱(ElementType) string NotificationTable = q.ElementType.Name; // 5.3 將取得的 NotificationTable 啟用通知功能 if (!SqlCacheDependencyAdmin.GetTablesEnabledForNotifications(connStr).Contains(NotificationTable)) { SqlCacheDependencyAdmin.EnableTableForNotifications(connStr, NotificationTable); } // 6. 建立 SqlCacheDependency物件 SqlCacheDependency sqlDep = new SqlCacheDependency(cmd); // 7. 刷新 LINQ to SQL 的值(取得資料庫中的最新資料) dc.Refresh(RefreshMode.OverwriteCurrentValues, q); // 8. 執行 SqlCacheDepency 查詢 cmd.ExecuteNonQuery(); // 9. 執行 LINQ to SQL 的查詢,並將結果轉成 List<T> 型別,避免延遲查詢(Delayed Query)立即將資料取回 objCache = q.ToList(); //10. 將結果插入到 System.Web.HttpRuntime.Cache 物件中,並且指定 SqlCacheDependency 物件 System.Web.HttpRuntime.Cache.Insert(CacheId, objCache, sqlDep); } } #endregion } // 回傳查詢結果(或快取的結果) return(objCache); }
protected virtual void LoadData() { if (BaseQuery != null) { ObjectQuery <TEntity> query; if (sortLocal || filterLocal) { if (list == null) { if (filterLocal) { query = BaseQuery; //list = PostLoadProcess(BaseQuery.ToList()); } else { if (filterInfo != null && !string.IsNullOrEmpty(filterInfo.Filter)) { query = BaseQuery.Where(filterInfo.Filter, new ObjectParameter[] { }); //list = PostLoadProcess(BaseQuery.Where(filterInfo.Filter, new ObjectParameter[] { }).ToList()); } else { query = BaseQuery; //list = PostLoadProcess(BaseQuery.ToList()); } } query.MergeOption = this.mergeOption; if (refreshContext && DataContext != null) { DataContext.Refresh(RefreshMode.StoreWins, query); } list = PostLoadProcess(query.ToList()); } if (FilterLocal && filterInfo != null && !string.IsNullOrEmpty(filterInfo.Filter)) { rows = PostLoadProcess(list.AsQueryable().Where((Expression <Func <TEntity, bool> >)filterInfo.Expression).ToList()); } else { rows = PostLoadProcess(list); } if (isSorted) { if (sortDirection == ListSortDirection.Ascending) { rows = PostLoadProcess(rows.OrderBy((Func <TEntity, object>)keySelector).ToList()); } else { rows = PostLoadProcess(rows.OrderByDescending((Func <TEntity, object>)keySelector).ToList()); } } } else { if (filterInfo == null || string.IsNullOrEmpty(filterInfo.Filter)) { query = BaseQuery; } else { query = BaseQuery.Where(filterInfo.Filter, new ObjectParameter[] { }); } query.MergeOption = this.mergeOption; /* * if (refreshContext && DataContext != null) * DataContext.Refresh(RefreshMode.StoreWins, query); */ if (isSorted) { /* * if (sortDirection == ListSortDirection.Ascending) * { * rows = PostLoadProcess(query.OrderBy((Func<TEntity, object>)keySelector).ToList()); * } * else * { * rows = PostLoadProcess(query.OrderByDescending((Func<TEntity, object>)keySelector).ToList()); * } */ rows = PostLoadProcess(GetSortedRows(query).ToList()); } else { rows = this.PostLoadProcess(query.ToList()); } } /* * if (refreshContext && dataContext != null) * dataContext.Refresh(RefreshMode.StoreWins, rows); */ } else { this.rows = GetRows(); } if (this.sortComparer != null) { this.Sort(this.sortComparer); this.sortComparer = null; } this.OnDataLoaded(new EventArgs()); }
public void Refresh(DataContext dataContext, RefreshMode mode, object entity) { dataContext.Refresh(mode, entity); }
public DataTable GetData(DataTable dataGridViewMain) { DataTable dtTable = new DataTable(); if (Authorization.Login == "root") { /// Группировка по Филиалу (находим последнюю запись) сортируем по дате var maxDate = from table in dc.GetTable <Orders_incomplete>() group table by table.Филиал into g select g.OrderByDescending(t => t.Дата_записи).FirstOrDefault(); dtTable = ToDataTable(maxDate); dc.Refresh(RefreshMode.OverwriteCurrentValues, maxDate); /// datacontext очистка var lastDays = from table in dc.GetTable <Orders_incomplete>() /// последние записи по Дате where table.Дата_записи >= Convert.ToDateTime(dtTable.Rows[0][12]) orderby table.Дата_записи descending select table; dtTable.Clear(); dtTable = ToDataTable(lastDays); dc.Refresh(RefreshMode.OverwriteCurrentValues, lastDays); /// datacontext очистка return(dtTable); } else if (dataGridViewMain.Rows.Count == 0) { /// Группировка по Филиалу (находим последнюю запись) сортируем по дате var maxDate = from table in dc.GetTable <Orders_incomplete>() group table by table.Филиал into g select g.OrderByDescending(t => t.Дата_записи).FirstOrDefault(); dtTable = ToDataTable(maxDate); dc.Refresh(RefreshMode.OverwriteCurrentValues, maxDate); /// datacontext очистка var lastDays = from table in dc.GetTable <Orders_incomplete>() /// последние записи по Дате where table.Дата_записи >= Convert.ToDateTime(dtTable.Rows[0][12]) where table.Филиал == Authorization.Login orderby table.Дата_записи descending select table; dtTable.Clear(); dtTable = ToDataTable(lastDays); dc.Refresh(RefreshMode.OverwriteCurrentValues, lastDays); /// datacontext очистка command return(dtTable); } else { var sevenDays = from table in dc.GetTable <Orders_incomplete>() where table.Дата_записи >= DateTime.Now.AddDays(-7) where table.Филиал == Authorization.Login orderby table.Дата_записи descending select table; dtTable = ToDataTable(sevenDays); dc.Refresh(RefreshMode.OverwriteCurrentValues, sevenDays); /// datacontext очистка return(dtTable); } }