private void Init() { var str = string.Format("SELECT max(r.{0}) FROM {1} r", m_idMember, m_table); var query = new ScalarQuery<object>(m_type, str); object highestId; try { highestId = query.Execute(); } catch (Exception e) { OnError(e); highestId = query.Execute(); } if (highestId == null) { m_highestId = 0; } else { m_highestId = (long)Convert.ChangeType(highestId, typeof(long)); } if (m_highestId < m_minId) { m_highestId = m_minId; } }
public void IncompatibleGenericTypesThrowMeaningfulErrorsOnDirectCall() { int result; var query = new ScalarQuery<int>(typeof(Post), validQuery); try { result = query.Execute(); } catch (Exception ex) { Assert.IsInstanceOf(typeof(NHibernate.QueryException), ex); Assert.IsTrue(ex.Message.Contains("Int32")); Assert.IsTrue(ex.Message.Contains("Int64")); } }
public void InvalidGenericQueryWithDirectCall() { var query = new ScalarQuery<int>(typeof(Post), invalidQuery); Assert.AreEqual(default(int), query.Execute()); }
public void ValidGenericQueryWithDirectCall() { var query = new ScalarQuery<long>(typeof(Post), validQuery); Assert.AreEqual(1, query.Execute()); }