public void PolymorphicCriteria() { if (!TestDialect.SupportsEmptyInsertsOrHasNonIdentityNativeGenerator) { Assert.Ignore("Support of empty inserts is required"); } ISession s = OpenSession(); ITransaction txn = s.BeginTransaction(); Category f = new Category(); Single b = new Single(); b.Id = "asdfa"; b.String = "asdfasdf"; s.Save(f); s.Save(b); IList list = s.CreateCriteria(typeof(object)).List(); Assert.AreEqual(2, list.Count); Assert.IsTrue(list.Contains(f)); Assert.IsTrue(list.Contains(b)); s.Delete(f); s.Delete(b); txn.Commit(); s.Close(); }
public void EmbeddedCompositeProperties() { ISession session = OpenSession(); Single s = new Single(); s.Id = "my id"; s.String = "string 1"; session.Save(s); session.Flush(); session.Clear(); IQuery query = session.CreateSQLQuery("select {sing.*} from Single {sing}") .AddEntity("sing", typeof(Single)); IList list = query.List(); Assert.IsTrue(list.Count == 1); session.Clear(); query = session.CreateSQLQuery("select {sing.*} from Single {sing} where sing.Id = ?") .AddEntity("sing", typeof(Single)); query.SetString(0, "my id"); list = query.List(); Assert.IsTrue(list.Count == 1); session.Clear(); query = session.CreateSQLQuery( "select s.id as {sing.Id}, s.string_ as {sing.String}, s.prop as {sing.Prop} from Single s where s.Id = ?") .AddEntity("sing", typeof(Single)); query.SetString(0, "my id"); list = query.List(); Assert.IsTrue(list.Count == 1); session.Clear(); query = session.CreateSQLQuery( "select s.id as {sing.Id}, s.string_ as {sing.String}, s.prop as {sing.Prop} from Single s where s.Id = ?") .AddEntity("sing", typeof(Single)); query.SetString(0, "my id"); list = query.List(); Assert.IsTrue(list.Count == 1); session.Delete(list[0]); session.Flush(); session.Close(); }
public void NonLazyBidirectional() { Single sin = new Single(); sin.Id = "asfdfds"; sin.String = "adsa asdfasd"; Several sev = new Several(); sev.Id = "asdfasdfasd"; sev.String = "asd ddd"; sin.Several.Add(sev); sev.Single = sin; using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.Save(sin); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { sin = (Single)s.Load(typeof(Single), sin); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { sev = (Several)s.Load(typeof(Several), sev); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.CreateQuery("from s in class Several").List(); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.CreateQuery("from s in class Single").List(); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.Delete("from Single"); t.Commit(); } }
public async Task NonLazyBidirectionalAsync() { Single sin = new Single(); sin.Id = "asfdfds"; sin.String = "adsa asdfasd"; Several sev = new Several(); sev.Id = "asdfasdfasd"; sev.String = "asd ddd"; sin.Several.Add(sev); sev.Single = sin; using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { await(s.SaveAsync(sin)); await(t.CommitAsync()); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { sin = (Single)await(s.LoadAsync(typeof(Single), sin)); await(t.CommitAsync()); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { sev = (Several)await(s.LoadAsync(typeof(Several), sev)); await(t.CommitAsync()); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { await(s.CreateQuery("from s in class Several").ListAsync()); await(t.CommitAsync()); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { await(s.CreateQuery("from s in class Single").ListAsync()); await(t.CommitAsync()); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { await(s.DeleteAsync("from Single")); await(t.CommitAsync()); } }
public void PolymorphicCriteria() { ISession s = OpenSession(); ITransaction txn = s.BeginTransaction(); Category f = new Category(); Single b = new Single(); b.Id = "asdfa"; b.String = "asdfasdf"; s.Save(f); s.Save(b); IList list = s.CreateCriteria(typeof(object)).List(); Assert.AreEqual(2, list.Count); Assert.IsTrue(list.Contains(f)); Assert.IsTrue(list.Contains(b)); s.Delete(f); s.Delete(b); txn.Commit(); s.Close(); }
public void NonLazyBidirectional() { Single sin = new Single(); sin.Id = "asfdfds"; sin.String = "adsa asdfasd"; Several sev = new Several(); sev.Id = "asdfasdfasd"; sev.String = "asd ddd"; sin.Several.Add(sev); sev.Single = sin; using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.Save(sin); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { sin = (Single) s.Load(typeof(Single), sin); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { sev = (Several) s.Load(typeof(Several), sev); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.CreateQuery("from s in class Several").List(); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.CreateQuery("from s in class Single").List(); t.Commit(); } using (ISession s = OpenSession()) using (ITransaction t = s.BeginTransaction()) { s.Delete("from Single"); t.Commit(); } }