コード例 #1
0
        public TModel Get <TEntity, TModel>(int id)
            where TEntity : class, IEntity
        {
            if (MappingsList.Exist <TEntity, TModel>())
            {
                var query = _repository.GetQueryById <TEntity>(id);
                return(query.AsQuery <TEntity, TModel>().FirstOrDefault());
            }

            var entity = _repository.Get <TEntity>(id);

            return(entity.To <TModel>());
        }
コード例 #2
0
        public TModel Get <TEntity, TModel>(Expression <Func <TEntity, bool> > filterExpression = null)
            where TEntity : class
        {
            if (MappingsList.Exist <TEntity, TModel>())
            {
                var query = _repository.GetList(filterExpression);
                return(query.AsQuery <TEntity, TModel>().FirstOrDefault());
            }

            var entity = _repository.Get(filterExpression);

            return(entity.To <TModel>());
        }
コード例 #3
0
        public static List <TModel> To <TEntity, TModel>(this IQueryable <TEntity> input)
            where TEntity : class
        {
            if (typeof(TEntity) == typeof(TModel))
            {
                return(input.ToList().Cast <TModel>().ToList());
            }

            if (MappingsList.Exist <TEntity, TModel>())
            {
                return(input.AsQuery <TEntity, TModel>().ToList());
            }

            return(input.ToList().To <TModel>());
        }