Example #1
0
        public void ReattachmentNaturalIdCheck()
        {
            User u;

            using (var s = OpenSession())
                using (var t = s.BeginTransaction())
                {
                    u = new User("gavin", "hb", "secret");
                    s.Persist(u);
                    t.Commit();
                    s.Close();
                }

            FieldInfo name = u.GetType().GetField("name",
                                                  BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.DeclaredOnly);

            name.SetValue(u, "Gavin");
            using (var s = OpenSession())
                using (var t = s.BeginTransaction())
                {
                    s.Update(u);
                    t.Commit();
                }

            using (var s = OpenSession())
                using (var t = s.BeginTransaction())
                {
                    s.Delete(u);
                    t.Commit();
                    s.Close();
                }
        }
        public void ReattachmentNaturalIdCheck()
        {
            ISession s = OpenSession();

            s.BeginTransaction();
            User u = new User("gavin", "hb", "secret");

            s.Persist(u);
            s.Transaction.Commit();
            s.Close();

            FieldInfo name = u.GetType().GetField("name",
                                                  BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.DeclaredOnly);

            name.SetValue(u, "Gavin");
            s = OpenSession();
            s.BeginTransaction();
            try
            {
                s.Update(u);
                s.Transaction.Commit();
            }
            catch (HibernateException)
            {
                s.Transaction.Rollback();
            }
            catch (Exception)
            {
                s.Transaction.Rollback();
            }
            finally
            {
                s.Close();
            }

            s = OpenSession();
            s.BeginTransaction();
            s.Delete(u);
            s.Transaction.Commit();
            s.Close();
        }
		public void ReattachmentNaturalIdCheck()
		{
			ISession s = OpenSession();
			s.BeginTransaction();
			User u = new User("gavin", "hb", "secret");
			s.Persist(u);
			s.Transaction.Commit();
			s.Close();

			FieldInfo name = u.GetType().GetField("name",
			                                      BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.DeclaredOnly);
			name.SetValue(u, "Gavin");
			s = OpenSession();
			s.BeginTransaction();
			try
			{
				s.Update(u);
				s.Transaction.Commit();
			}
			catch (HibernateException)
			{
				s.Transaction.Rollback();
			}
			catch (Exception)
			{
					s.Transaction.Rollback();
			}
			finally
			{
				s.Close();
			}

			s = OpenSession();
			s.BeginTransaction();
			s.Delete(u);
			s.Transaction.Commit();
			s.Close();
		}