Exemplo n.º 1
0
        protected override bool Save()
        {
            if (!base.Save())
            {
                MessageBox.Show("Не удалось сохранить протокол.\nИзменения не сохранены");
                return(false);
            }
            try
            {
                ArrayList alQueries = new ArrayList();

                using (PriemEntities context = new PriemEntities())
                {
                    using (TransactionScope transaction = new TransactionScope(TransactionScopeOption.RequiresNew))
                    {
                        try
                        {
                            //меняет тип конкурса + снимает отметку
                            foreach (DataGridViewRow r in dgvLeft.Rows)
                            {
                                SortedList slVals  = new SortedList();
                                Guid?      abitId  = new Guid(r.Cells["Id"].Value.ToString());
                                int?       compNew = 4;

                                context.Abiturient_UpdateCompetititon(compNew, null, false, abitId);
                                context.Abiturient_UpdateHasOriginals(false, abitId);//оригиналы больше "не поданы"
                            }

                            transaction.Complete();
                        }
                        catch (Exception exc)
                        {
                            throw new Exception("Ошибка при сохранении данных: " + exc.Message);
                        }
                    }
                }
                return(true);
            }

            catch (Exception ex)
            {
                MessageBox.Show("Ошибка при изменении типа конкурса: " + ex.Message);
                return(false);
            }
        }