Exemplo n.º 1
0
        private void CloneObjectController_CustomCloneObject(object sender, CustomCloneObjectEventArgs e)
        {
            var cloner = new MyCloner();

            e.TargetObjectSpace = e.CreateDefaultTargetObjectSpace();
            object objectFromTargetObjectSpace = e.TargetObjectSpace.GetObject(e.SourceObject);

            e.ClonedObject = cloner.CloneTo(objectFromTargetObjectSpace, e.TargetType);

            if (e.ClonedObject.GetType() == typeof(Schedule))
            {
                Schedule clonedSchedule = (Schedule)e.ClonedObject;
                clonedSchedule.CreateDate        = DateTime.Now;
                clonedSchedule.ModifyDate        = DateTime.Now;
                clonedSchedule.IsCarAssigned     = false;
                clonedSchedule.AssignedCar       = null;
                clonedSchedule.AssignedDriver    = null;
                clonedSchedule.CarAssignedBy     = null;
                clonedSchedule.CarAssignedDate   = DateTime.MinValue;
                clonedSchedule.CarAssignmentNote = null;
                if (clonedSchedule.MinutesOfMeetings.Count > 0)
                {
                    foreach (MinutesOfMeeting mom in clonedSchedule.MinutesOfMeetings)
                    {
                        mom.Delete();
                    }
                }
            }
        }
Exemplo n.º 2
0
        void cloneObjectController_CustomCloneObject(object sender, CustomCloneObjectEventArgs e)
        {
            var cloner        = new MiClonador();
            var defaultCloner = new Cloner();

            e.TargetObjectSpace = e.CreateDefaultTargetObjectSpace();
            object objectFromTargetObjectSpace = e.TargetObjectSpace.GetObject(e.SourceObject);

            if ((e.TargetType).Name == "Activo" || (e.TargetType).Name == "Equipo" ||
                (e.TargetType).Name == "Vehiculo" || (e.TargetType).Name == "Software")
            {
                e.ClonedObject = cloner.CloneTo(objectFromTargetObjectSpace, e.TargetType);
            }
            else
            {
                e.ClonedObject = defaultCloner.CloneTo(objectFromTargetObjectSpace, e.TargetType);
            }
        }