/// <summary> /// Update Vehicle /// </summary> /// <param name="vehicle"></param> /// <param name="declerationID"></param> /// <returns></returns> public static int UpdateVehicle(tblVehicle vehicle, long declerationID) { // Set last modified date to now vehicle.ModifiedDate = CommonFactory.GetCurrentDate(); var db = new dbEcustomEntities(Common.Decrypt(ConfigurationManager.ConnectionStrings["dbEcustomEntities"].ConnectionString, true)); switch (declerationID) { case 0: { // Get orgin vehicle var vehicleOrgin = db.tblVehicles.Where(g => g.VehicleID == vehicle.VehicleID).FirstOrDefault(); if (vehicleOrgin != null) { db.Attach(vehicleOrgin); db.ApplyPropertyChanges("tblVehicles", vehicle); if (vehicle.ListVehicleChangeGood != null) { //update tblVehicleChange VehicleFactory.DeleteVehicleChangeByVehicleId(vehicle.VehicleID); VehicleFactory.AddVehicleChangeByVehicleId(vehicle.VehicleID, vehicle.ListVehicleChangeGood.Select(x => x.VehicleId).ToList()); } db.Connection.Close(); int re = db.SaveChanges(); return re; } return -1; } default: { var vehicleOrgin = db.tblVehicles.Where(g => g.VehicleID == vehicle.VehicleID).FirstOrDefault(); db.Attach(vehicleOrgin); db.ApplyPropertyChanges("tblVehicles", vehicle); //db.SaveChanges(); // Insert to tblVehicleDeclerateion var vehicleDeclara = new tblDeclarationVehicle(); vehicleDeclara.VehicleID = vehicle.VehicleID; vehicleDeclara.DeclarationID = declerationID; db.AddTotblDeclarationVehicles(vehicleDeclara); int re = db.SaveChanges(); db.Connection.Close(); db.Dispose(); return re; } } }