public void Add(ICriteria criteria) { if (session == null) { session = criteria.GetSession(); } if (session != criteria.GetSession()) { throw new InvalidOperationException("All queries in the batch must be on the same session"); } criterias.Add(criteria); index = criterias.Count - 1; }