Beispiel #1
0
        public TParentEntity SingleOrDefault()
        {
            _metadatastore.AddEntity(typeof(TParentEntity));

            BuildSql(0);

            var uniqueResultAction = new UniqueResultAction <TParentEntity>(_metadatastore, _hydrator,
                                                                            _connection, _dialect, _environment);

            return(uniqueResultAction.GetSingleOrDefaultResult(_currentStatement, _queryParameters));
        }
Beispiel #2
0
        public TEntity SingleOrDefault <TEntity>() where TEntity : class
        {
            if (typeof(TEntity) == typeof(TParentEntity))
            {
                throw new InvalidOperationException("Can not project " + typeof(TParentEntity).Name + " onto " +
                                                    typeof(TEntity).Name +
                                                    ". The projection entity type can not be the same as the entity to be queried.");
            }

            _metadatastore.AddEntity(typeof(TEntity));

            BuildSql(0);

            var uniqueResultAction = new UniqueResultAction <TEntity>(_metadatastore,
                                                                      _hydrator, _connection, _dialect, _environment);

            return(uniqueResultAction.GetSingleOrDefaultResult(_currentStatement, _queryParameters));
        }