Beispiel #1
0
        public void SaveItems(List <BusinessLogicLayer.Entity.PPM.BookPackItem> items)
        {
            DataAccessLayer.QiyasLinqDataContext context = new DataAccessLayer.QiyasLinqDataContext();
            foreach (BusinessLogicLayer.Entity.PPM.BookPackItem item in items)
            {
                item.Save(db, false);
                context = item.context;
            }


            db.SubmitChanges();
            List <BusinessLogicLayer.Entity.PPM.BookPackItemModel> itemModels = new List <Entity.PPM.BookPackItemModel>();

            foreach (BusinessLogicLayer.Entity.PPM.BookPackItem item in items)
            {
                foreach (BusinessLogicLayer.Entity.PPM.BookPackItemModel model in item.ItemModels)
                {
                    model.BookPackItemID = item.BookPackItemID;
                    itemModels.Add(model);
                    //model.Save(db, false);
                }
            }
            //DataTableHelper.BulkCopyToDatabase(itemModels, "PPM.BookPackItemModel", context);
            db.SubmitChanges();
        }
Beispiel #2
0
 internal override bool?Save(Qiyas.DataAccessLayer.QiyasLinqDataContext context, bool commit)
 {
     DataAccessLayer.QiyasLinqDataContext db     = new DataAccessLayer.QiyasLinqDataContext();
     Qiyas.DataAccessLayer.ExamCenter     center = null;
     if (isNew)
     {
         center = GetCenter(0, db);
         db.ExamCenters.InsertOnSubmit(center);
     }
     else
     {
         center = GetCenter(ExaminationCenterID, db);
     }
     if (commit)
     {
         try
         {
             db.SubmitChanges();
             isNew = false;
             return(true);
         }
         catch (Exception ex)
         {
             lastException = ex;
             return(false);
         }
     }
     else
     {
         return(null);
     }
 }
Beispiel #3
0
        public static RequestWithdraw GetByExamCenterRequiredExamsID(int ExamCenterRequiredExamsID)
        {
            Qiyas.DataAccessLayer.QiyasLinqDataContext context = new DataAccessLayer.QiyasLinqDataContext();
            var             entity   = context.RequestWithdraws.Where(p => p.ExamCenterRequiredExamsID == ExamCenterRequiredExamsID).FirstOrDefault();
            RequestWithdraw withdraw = new RequestWithdraw(entity);

            return(withdraw);
        }
Beispiel #4
0
 private Qiyas.DataAccessLayer.ExamCenter GetCenter(int centerId, DataAccessLayer.QiyasLinqDataContext db)
 {
     Qiyas.DataAccessLayer.ExamCenter center = new DataAccessLayer.ExamCenter();
     if (centerId != 0)
     {
         center = db.ExamCenters.Where(c => c.ExaminationCenterID == centerId).FirstOrDefault();
     }
     center.CenterCode          = this.entity.CenterCode;
     center.CityID              = this.entity.CityID;
     center.CreatedDate         = this.entity.CreatedDate;
     center.CreatorID           = this.entity.CreatorID;
     center.IsActive            = this.entity.IsActive;
     center.ExaminationCenterID = this.entity.ExaminationCenterID;
     center.ModifiedByID        = this.entity.ModifiedByID;
     center.ModifiedDate        = this.entity.ModifiedDate;
     center.Name            = this.Name;
     center.StudentGenderID = this.StudentGenderID;
     return(center);
 }
        public static bool SaveBulkItemsList <T, C>(this IEnumerable <T> source, IEnumerable <C> sourceChild, string tableName, string tableNameChild)
        {
            bool           IsSuccessSave = false;
            SqlTransaction transaction   = null;

            try
            {
                #region Table Names
                if (tableName.Contains("."))
                {
                    string[] splitTableName = tableName.Split('.');
                    tableName = string.Format("[{0}].[{1}]", splitTableName[0], splitTableName[1]);
                }

                if (tableNameChild.Contains("."))
                {
                    string[] splitTableName = tableNameChild.Split('.');
                    tableNameChild = string.Format("[{0}].[{1}]", splitTableName[0], splitTableName[1]);
                }
                #endregion

                using (Qiyas.DataAccessLayer.QiyasLinqDataContext databaseContext = new DataAccessLayer.QiyasLinqDataContext())
                {
                    var connectionString = databaseContext.Connection.ConnectionString;
                    using (SqlConnection connection = new SqlConnection(connectionString))
                    {
                        connection.Open();
                        using (transaction = connection.BeginTransaction())
                        {
                            var DT_tbl_FirstTable  = DataTableHelper.CopyToDataTable(source);
                            var DT_tbl_SecondTable = DataTableHelper.CopyToDataTable(sourceChild);
                            using (SqlBulkCopy bulkCopy_tbl_FirstTable = new SqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity, transaction))
                            {
                                bulkCopy_tbl_FirstTable.BatchSize            = 5000;
                                bulkCopy_tbl_FirstTable.DestinationTableName = tableName;
                                List <DataColumn> pkList = new List <DataColumn>();
                                foreach (DataColumn dc in DT_tbl_FirstTable.Columns)
                                {
                                    if (dc.ColumnName == "lastException")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "isNew")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "context")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "HasObject")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "entity")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "ModelandNumber")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "Speciality")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "PackageTypeName")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "LastBookCount")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "ItemModels")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "BookPackItemID")
                                    {
                                        dc.Unique            = true;
                                        dc.AutoIncrement     = true;
                                        dc.AutoIncrementStep = 1;
                                        pkList.Add(dc);
                                    }
                                    string [] columnsList = { "BookPackItemID", "BookPackingOperationID", "PackCode",        "PackSerial",     "Weight", "OperationStatusID"
                                                              ,                 "ParentID",               "StartBookSerial", "LastBookSerial", "BookPackItemOperationID", "ParentBookPackItemID" };
                                    if (columnsList.Contains(dc.ColumnName))
                                    {
                                        bulkCopy_tbl_FirstTable.ColumnMappings.Add(new SqlBulkCopyColumnMapping(dc.ColumnName, dc.ColumnName));
                                    }
                                }

                                DT_tbl_FirstTable.PrimaryKey = pkList.ToArray();
                                //bulkCopy_tbl_FirstTable.ColumnMappings.Add("ID", "ID");
                                //bulkCopy_tbl_FirstTable.ColumnMappings.Add("UploadFileID", "UploadFileID");
                                //bulkCopy_tbl_FirstTable.ColumnMappings.Add("Active", "Active");
                                //bulkCopy_tbl_FirstTable.ColumnMappings.Add("CreatedUserID", "CreatedUserID");
                                //bulkCopy_tbl_FirstTable.ColumnMappings.Add("CreatedDate", "CreatedDate");
                                //bulkCopy_tbl_FirstTable.ColumnMappings.Add("UpdatedUserID", "UpdatedUserID");
                                //bulkCopy_tbl_FirstTable.ColumnMappings.Add("UpdatedDate", "UpdatedDate");
                                bulkCopy_tbl_FirstTable.WriteToServer(DT_tbl_FirstTable);
                            }

                            using (SqlBulkCopy bulkCopy_tbl_SecondTable = new SqlBulkCopy(connection, SqlBulkCopyOptions.KeepIdentity, transaction))
                            {
                                bulkCopy_tbl_SecondTable.BatchSize            = 5000;
                                bulkCopy_tbl_SecondTable.DestinationTableName = tableNameChild;
                                List <DataColumn> pkList = new List <DataColumn>();
                                foreach (DataColumn dc in DT_tbl_SecondTable.Columns)
                                {
                                    if (dc.ColumnName == "lastException")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "isNew")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "context")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "HasObject")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "entity")
                                    {
                                        continue;
                                    }
                                    if (dc.ColumnName == "BookPackItemModelID")
                                    {
                                        continue;
                                    }

                                    string[] columnsList = { "BookPackItemModelID", "BookPackItemID", "ExamModelID" };
                                    if (columnsList.Contains(dc.ColumnName))
                                    {
                                        bulkCopy_tbl_SecondTable.ColumnMappings.Add(new SqlBulkCopyColumnMapping(dc.ColumnName, dc.ColumnName));
                                    }
                                }

                                DT_tbl_SecondTable.PrimaryKey = pkList.ToArray();
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("ID", "ID");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("UploadFileDetailID", "UploadFileDetailID");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("CompaignFieldMasterID", "CompaignFieldMasterID");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("Value", "Value");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("Active", "Active");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("CreatedUserID", "CreatedUserID");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("CreatedDate", "CreatedDate");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("UpdatedUserID", "UpdatedUserID");
                                //bulkCopy_tbl_SecondTable.ColumnMappings.Add("UpdatedDate", "UpdatedDate");
                                bulkCopy_tbl_SecondTable.WriteToServer(DT_tbl_SecondTable);
                            }


                            transaction.Commit();
                            IsSuccessSave = true;
                        }
                        connection.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                if (transaction != null)
                {
                    transaction.Rollback();
                }



                if (ex.InnerException != null)
                {
                }
            }
            return(IsSuccessSave);
        }