Beispiel #1
0
        /// <summary>
        /// Нетривиальная логика сохранения объекта.
        /// </summary>
        /// <returns>Объект данных, который сохранился.</returns>
        protected override DataObject SaveObject()
        {
            if (DataObject != null)
            {
                switch (DataObject.GetStatus())
                {
                case ObjectStatus.Created:
                    using (var ds = (SQLDataService)DataServiceProvider.DataService)
                    {
                        object   calendarId = Session["CalendarID"];
                        Calendar calendar   = ds.Query <Calendar>()
                                              .Where(c => c.__PrimaryKey == calendarId)
                                              .First();
                        ds.LoadObject(calendar);
                        DataObject.Calendar = calendar;
                    }
                    TSSaveHelper.CreateTimeSpans(DataObject);
                    break;

                case ObjectStatus.Deleted:
                    TSSaveHelper.DeleteTimeSpans(DataObject);
                    break;

                default:
                {
                    if (ctrlMondayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Monday, DataObject.MondayTS);
                    }
                    if (ctrlTuesdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Tuesday, DataObject.TuesdayTS);
                    }
                    if (ctrlWednesdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Wednesday, DataObject.WednesdayTS);
                    }
                    if (ctrlThursdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Thursday, DataObject.ThursdayTS);
                    }
                    if (ctrlFridayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Friday, DataObject.FridayTS);
                    }
                    if (ctrlSaturdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Saturday, DataObject.SaturdayTS);
                    }
                    if (ctrlSundayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Sunday, DataObject.SundayTS);
                    }
                }
                break;
                }
            }
            return(base.SaveObject());
        }
        /// <summary>
        /// Нетривиальная логика сохранения объекта.
        /// </summary>
        /// <returns>Объект данных, который сохранился.</returns>
        protected override DataObject SaveObject()
        {
            if (DataObject != null)
            {
                switch (DataObject.GetStatus())
                {
                case ObjectStatus.Created:
                    TSSaveHelper.CreateTimeSpans(DataObject);
                    break;

                case ObjectStatus.Deleted:
                    TSSaveHelper.DeleteTimeSpans(DataObject);
                    break;

                default:
                {
                    if (ctrlMondayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Monday, DataObject.MondayTS);
                    }
                    if (ctrlTuesdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Tuesday, DataObject.TuesdayTS);
                    }
                    if (ctrlWednesdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Wednesday, DataObject.WednesdayTS);
                    }
                    if (ctrlThursdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Thursday, DataObject.ThursdayTS);
                    }
                    if (ctrlFridayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Friday, DataObject.FridayTS);
                    }
                    if (ctrlSaturdayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Saturday, DataObject.SaturdayTS);
                    }
                    if (ctrlSundayTS.Status == ObjectStatus.Altered)
                    {
                        TSSaveHelper.UpdateTimeSpans(DataObject.Sunday, DataObject.SundayTS);
                    }
                }
                break;
                }
            }
            return(base.SaveObject());
        }