private void btnEdit_Click(object sender, EventArgs e)
        {
            DialogResult dlgResult;
            KvalifikantiTak3EditorForm form;
            try
            {
                form = new KvalifikantiTak3EditorForm(takmicenje.Id, ActiveTakmicenje.Id, ActiveSprava);
                dlgResult = form.ShowDialog();
            }
            catch (BusinessException ex)
            {
                MessageDialogs.showError(ex.Message, this.Text);
                return;
            }
            catch (InfrastructureException ex)
            {
                MessageDialogs.showError(ex.Message, this.Text);
                return;
            }

            if (dlgResult != DialogResult.OK)
                return;
            try
            {
                DataAccessProviderFactory factory = new DataAccessProviderFactory();
                dataContext = factory.GetDataContext();
                dataContext.BeginTransaction();

                // ponovo ucitaj takmicenje
                RezultatskoTakmicenje rt = loadRezTakmicenje(ActiveTakmicenje.Id);
                int index;
                for (index = 0; index < rezTakmicenja.Count; index++)
                {
                    if (rezTakmicenja[index].Id == rt.Id)
                        break;
                }
                rezTakmicenja[index] = rt;
            }
            catch (Exception ex)
            {
                if (dataContext != null && dataContext.IsInTransaction)
                    dataContext.Rollback();
                string msg = Strings.getFullDatabaseAccessExceptionMessage(ex);
                MessageDialogs.showMessage(msg, this.Text);
                Close();
                return;
            }
            finally
            {
                if (dataContext != null)
                    dataContext.Dispose();
                dataContext = null;
            }

            CurrencyManager currencyManager =
                (CurrencyManager)this.BindingContext[cmbTakmicenje.DataSource];
            currencyManager.Refresh();
            refreshKvalifikanti();
        }
Beispiel #2
0
        private void btnEdit_Click(object sender, EventArgs e)
        {
            DialogResult dlgResult;
            KvalifikantiTak3EditorForm form;

            try
            {
                form      = new KvalifikantiTak3EditorForm(takmicenje.Id, ActiveTakmicenje.Id, ActiveSprava);
                dlgResult = form.ShowDialog();
            }
            catch (BusinessException ex)
            {
                MessageDialogs.showError(ex.Message, this.Text);
                return;
            }
            catch (InfrastructureException ex)
            {
                MessageDialogs.showError(ex.Message, this.Text);
                return;
            }

            if (dlgResult != DialogResult.OK)
            {
                return;
            }

            ISession session = null;

            try
            {
                using (session = NHibernateHelper.Instance.OpenSession())
                    using (session.BeginTransaction())
                    {
                        CurrentSessionContext.Bind(session);

                        // ponovo ucitaj takmicenje
                        RezultatskoTakmicenje rt = loadRezTakmicenje(ActiveTakmicenje.Id);
                        int index;
                        for (index = 0; index < rezTakmicenja.Count; index++)
                        {
                            if (rezTakmicenja[index].Id == rt.Id)
                            {
                                break;
                            }
                        }
                        rezTakmicenja[index] = rt;
                    }
            }
            catch (Exception ex)
            {
                if (session != null && session.Transaction != null && session.Transaction.IsActive)
                {
                    session.Transaction.Rollback();
                }
                MessageDialogs.showMessage(Strings.getFullDatabaseAccessExceptionMessage(ex), this.Text);
                Close();
                return;
            }
            finally
            {
                CurrentSessionContext.Unbind(NHibernateHelper.Instance.SessionFactory);
            }

            CurrencyManager currencyManager =
                (CurrencyManager)this.BindingContext[cmbTakmicenje.DataSource];

            currencyManager.Refresh();
            refreshKvalifikantiIRezerve();
        }