コード例 #1
0
        public void SaveSOHeader(SalesOrderHeader SO)
        {
            try
            {
                using (SODBContext db = new SODBContext())
                {
                    db.Entry(SO.SalesPerson).State       = EntityState.Unchanged;
                    db.Entry(SO.Customer).State          = EntityState.Unchanged;
                    db.Entry(SO.Customer.CustCity).State = EntityState.Unchanged;

                    //db.Entry(SO.SalesOrderDetails).State = EntityState.Unchanged;


                    db.SalesOrderHeaders.Add(SO);
                    //db.Entry(SO).State = EntityState.Added;


                    _SalesOrderDetail.SaveSODetail(SO.SalesOrderDetails, db);
                    //foreach (SalesOrderDetail line in SO.SalesOrderDetails)
                    //{
                    //    //line.SalesOrderHeader = SO;
                    //    //db.Entry(line.SalesOrderHeader).State = EntityState.Unchanged;
                    //    db.Entry(line.Item).State = EntityState.Unchanged;
                    //    //db.Entry(line.Item.UnitofMeasure).State = EntityState.Unchanged;
                    //    //db.Entry(line.Item.ItemCategory).State = EntityState.Unchanged;

                    //    //db.Entry(line).State = EntityState.Added;
                    //    //db.Items.Attach(line.Item);
                    //    //db.UnitofMeasures.Attach(line.Item.UnitofMeasure);
                    //    //db.ItemCategories.Attach(line.Item.ItemCategory);

                    //    db.SalesOrderDetails.Add(line);
                    //}

                    db.Entry(SO).State = EntityState.Added;

                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #2
0
 public void SaveSODetail(IEnumerable <SalesOrderDetail> SO, SODBContext db)
 {
     try
     {
         foreach (SalesOrderDetail line in SO)
         {
             db.Entry(line.Item).State = EntityState.Unchanged;
             db.SalesOrderDetails.Add(line);
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }