protected void CopyTo <T>(T dataItem) where T : PNRDataItem { base.CopyTo(dataItem); #region Клонирование внутренних элементов switch (Type) { case PNRDataItemType.CashValueForMultiFOPProxing: dataItem.CashValueForMultiFOPProxing = CashValueForMultiFOPProxing?.Copy(); break; case PNRDataItemType.FOP: dataItem.PNRFOP = PNRFOP?.Copy(); dataItem.FOPInfo = FOPInfo?.Copy(); break; case PNRDataItemType.SubagentCommission: dataItem.SubagentCommission = SubagentCommission?.Copy(); break; case PNRDataItemType.TicketDesignator: dataItem.TicketDesignator = TicketDesignator?.Copy(); break; case PNRDataItemType.Markup: dataItem.Markup = Markup?.Copy(); break; case PNRDataItemType.TicketingProxy: dataItem.TicketingProxy = TicketingProxy?.Copy(); break; case PNRDataItemType.CRMIntegration: dataItem.CRMIntegration = CRMIntegration?.Copy(); break; case PNRDataItemType.EndUserData: dataItem.EndUserData = EndUserData?.Copy(); break; case PNRDataItemType.SellingPointDescription: dataItem.SellingPointDescription = SellingPointDescription?.Copy(); break; } #endregion }