public Order(Order Order)
 {
     try
     {
         _ID              = Order.ID;
         _DateCreate      = Order.DateCreate;
         _Number          = Order.Number;
         _Executor        = Order.Executor;
         _ExecutorWork    = Order.ExecutorWork;
         _List            = Order.List;
         _Mark            = Order.Mark;
         _Lenght          = Order.Lenght;
         _Weight          = Order.Weight;
         _WeightDifferent = Order.WeightDifferent;
         _Status          = Order.Status;
         _StatusDate      = Order.StatusDate;
         _TypeAdd         = Order.TypeAdd;
         _Model           = Order.Model;
         _PathDetails     = Order.PathDetails;
         _PathArhive      = Order.PathArhive;
         _Revision        = Order.Revision;
         _Comment         = Order.Comment;
         _User            = Order.User;
         _BlankOrder      = Order.BlankOrder;
         _Finished        = Order.Finished;
         _Canceled        = Order.Canceled;
         _Hide            = Order.Hide;
         _CountMarks      = Order.CountMarks;
         _Details         = Details;
     }
     catch (Exception Ex)
     {
         throw new Exception(Ex.Message, Ex);
     }
 }
        public Order(Int64 ID, DateTime DateCreate, String Number, String Executor, String ExecutorWork, String List, String Mark, Double Lenght, Double Weight, Double WeightDifferent, Status Status, DateTime StatusDate, TypeAdd TypeAdd, Model Model, PathDetails PathDetails, PathArhive PathArhive, Revision Revision, Comment Comment, User User, BlankOrder BlankOrder, Boolean Hide, Boolean Canceled, Boolean Finished)
        {
            if (ID >= 0)
            {
                _ID = ID;
            }

            if (DateCreate != null)
            {
                _DateCreate = DateCreate;
            }
            else
            {
                throw new Exception("Пустое значение Даты добавления");
            }

            if (!String.IsNullOrEmpty(Number))
            {
                _Number = Number;
            }
            else
            {
                throw new Exception("Пустое значение Номера заказа");
            }

            if (!String.IsNullOrEmpty(Executor))
            {
                _Executor = Executor;
            }
            else
            {
                throw new Exception("Пустое значение Исполнителя");
            }
            if (!String.IsNullOrEmpty(ExecutorWork))
            {
                _ExecutorWork = ExecutorWork;
            }
            else
            {
                throw new Exception("Пустое значение Исполнителя работ");
            }

            if (!String.IsNullOrEmpty(List))
            {
                _List = List;
            }
            else
            {
                throw new Exception("Пустое значение листа");
            }

            if (!String.IsNullOrEmpty(Mark))
            {
                _Mark = Mark;
            }
            else
            {
                throw new Exception("Пустое значение Марки");
            }

            if (Lenght >= 0)
            {
                _Lenght = Lenght;
            }
            else
            {
                throw new Exception("Значение длинны меньше 0");
            }

            if (Weight >= 0)
            {
                _Weight = Weight;
            }
            else
            {
                throw new Exception("Значение веса меньше 0");
            }

            _WeightDifferent = WeightDifferent;

            if (TypeAdd != null)
            {
                _TypeAdd = TypeAdd;
            }
            else
            {
                _TypeAdd = new TypeAdd {
                    ID = 0, Discriprion = "Не определен"
                };
            }

            if (Model != null)
            {
                _Model = Model;
            }
            else
            {
                _Model = new Model {
                    ID = 0, DateCreate = new DateTime(1970, 1, 1), Path = "Путь не определен"
                };
            }
            if (PathDetails != null)
            {
                _PathDetails = PathDetails;
            }
            else
            {
                _PathDetails = new PathDetails {
                    ID = 0, DateCreate = new DateTime(1970, 1, 1), PathDWG = "Не найдена папка деталировки", PathPDF = "Не найдена папка деталировки", PathDXF = "Не найдена папка деталировки"
                };
            }
            if (PathArhive != null)
            {
                _PathArhive = PathArhive;
            }
            else
            {
                _PathArhive = new PathArhive {
                    ID = 0, DateCreate = new DateTime(1970, 1, 1), Path = "Не найдена папка архива"
                };
            }

            if (Revision != null)
            {
                _Revision = Revision;
            }
            else
            {
                _Revision = new Revision {
                    ID = 0, DateCreate = new DateTime(1970, 1, 1), CreatedBy = "Исполнитель не найден", Information = "Информация не найдена", Description = "Описание не найдено", LastApptovedBy = "Основание не найдено"
                };
            }

            _Comment = Comment;

            _Details = new List <Detail>();

            if (StatusDate != null)
            {
                _StatusDate = StatusDate;
            }
            else
            {
                throw new Exception("Пустое значение даты присвоения статуса");
            }

            this.Status     = Status;
            this.User       = User;
            this.BlankOrder = BlankOrder;

            _Hide = Hide;

            _Canceled = Canceled;

            _Finished = Finished;
        }