Пример #1
0
        public static void SaveColumns(Guid DataViewTypeID, List <string> TableColumns, int DataViewColumnListTypeID, Guid DataViewListID)
        {
            using (LinqMicajahDataContext dc = new LinqMicajahDataContext())
            {
                var NeedDelColumns = dc.DataViewColumn.Where(c => c.DataViewColumnListTypeID == DataViewColumnListTypeID && c.Status == true && c.InstanceId == LinqMicajahDataContext.InstanceId && c.DataViewListID == DataViewListID).ToList();
                dc.DataViewColumn.DeleteAllOnSubmit(NeedDelColumns);

                for (int i = 0; i < TableColumns.Count; i++)
                {
                    string         NeedInsertColumn = TableColumns[i];
                    string []      ss = NeedInsertColumn.Split(',');
                    DataViewColumn c  = new DataViewColumn()
                    {
                        TableName                = ss[0],
                        ColumnName               = ss[1],
                        DataViewListID           = DataViewListID,
                        DataViewColumnListTypeID = DataViewColumnListTypeID,
                        OrderNumber              = i
                    };
                    dc.DataViewColumn.InsertOnSubmit(c);
                }

                dc.SubmitChanges();
            }
        }
Пример #2
0
        public static void SaveWhere(Guid DataViewTypeID, List<Extend> WhereCriteria, string Condition, int DataViewColumnListTypeID, Guid DataViewListID)
        {
            using (LinqMicajahDataContext dc = new LinqMicajahDataContext())
            {
                var wl = (from l in dc.DataViewList
                         where l.InstanceId == LinqMicajahDataContext.InstanceId && l.Status == true &&
                            l.DataViewListID == DataViewListID
                         select l).FirstOrNull();

                if (wl == null) return;
                wl.WhereCondition = Condition;

                var ColumnForDel = (from c in dc.DataViewColumn
                             where c.InstanceId == LinqMicajahDataContext.InstanceId && c.Status == true &&
                             c.DataViewColumnListTypeID == DataViewColumnListTypeID && c.DataViewListID == DataViewListID
                             select c).ToList();
                var ColumnForDelID = ColumnForDel.Select(c=>c.DataViewColumnID).ToList();
                var WhereForDel = from w in dc.DataViewWhere
                                  where w.InstanceId == LinqMicajahDataContext.InstanceId && w.Status == true &&
                                    w.DataViewListID == DataViewListID && w.Slave== (DataViewColumnListTypeID!=2)
                                  select w;
                dc.DataViewColumn.DeleteAllOnSubmit(ColumnForDel);
                dc.DataViewWhere.DeleteAllOnSubmit(WhereForDel);

                foreach (var w in WhereCriteria)
                {
                    DataViewColumn NewColumn = new DataViewColumn()
                    {
                        TableName = w.TableName,
                        ColumnName = w.ColumnName,
                        DataViewListID = DataViewListID,
                        DataViewColumnListTypeID = DataViewColumnListTypeID,
                        InstanceId = LinqMicajahDataContext.InstanceId,
                        OrderNumber = WhereCriteria.IndexOf(w),
                        DataViewColumnID = Guid.NewGuid()
                    };
                    dc.DataViewColumn.InsertOnSubmit(NewColumn);

                    DataViewWhere NewWhere = new DataViewWhere()
                    {
                        DataViewListID = DataViewListID,
                        DataViewColumnID = NewColumn.DataViewColumnID,
                        DataViewConditionTypeID = w.DataViewConditionTypeID,
                        CompareValue = w.CompareValue,
                        Slave = (DataViewColumnListTypeID!=2)
                    };
                    dc.DataViewWhere.InsertOnSubmit(NewWhere);
                }

                dc.SubmitChanges();
            }
        }