C# 或者更少)像这样: /// <summary> /// Get by Filter /// </summary> /// <param name="filter">user filters</param> /

C# 或者更少)像这样: /// <summary> /// Get by Filter /// </summary> /// <param name="filter">user filters</param> /,c#,filter,repository,iqueryable,unit-of-work,C#,Filter,Repository,Iqueryable,Unit Of Work,或者更少)像这样: /// <summary> /// Get by Filter /// </summary> /// <param name="filter">user filters</param> /// <returns></returns> [Route("functionRoute")] [HttpPost] public IHttpActionResult GetUsersByFilter([FromBod

或者更少)像这样:

/// <summary>
/// Get by Filter
/// </summary>
/// <param name="filter">user filters</param>
/// <returns></returns>
[Route("functionRoute")]
[HttpPost]

public IHttpActionResult GetUsersByFilter([FromBody] UserFilter filter)
{
            try
            {
                UserService service= new UserService ();
                List<User> list = service.GetByFilter(filter).Select(x => new User() {
                Id = x.Id,
                Name = x.Name,
                //every property except your image property
                }).ToList();

                List<UserCE> listCE = Mapper.Map<List<UserCE>>(list);

                return Ok(listCE);
            }
            catch (Exception ex)
            {
                TraceManager.LogError(ex);
                return InternalServerError(ex);
            }
}
//
///通过过滤器
/// 
///用户过滤器
/// 
[路线(“功能路线”)]
[HttpPost]
公共IHttpActionResult GetUsersByFilter([FromBody]UserFilter筛选器)
{
尝试
{
UserService=newuserservice();
List=service.GetByFilter(filter).Select(x=>newuser(){
Id=x.Id,
Name=x.Name,
//除图像属性外的所有属性
}).ToList();
List listCE=Mapper.Map(列表);
返回Ok(列表);
}
捕获(例外情况除外)
{
TraceManager.LogError(ex);
返回InternalServerError(ex);
}
}

SO问题可能重复。SO问题可能重复。@Excali 2我的答案最终帮助你解决问题了吗?@Excali 2我的答案最终帮助你解决问题了吗?
public List<User> GetByFilter(UserFilter filter)
        {
            return _unitOfWork.UserRepository.GetByFilter(filter).ToList();
        }
public IQueryable<User> GetByFilter(UserFilter filter)
        {
            return Get_internal(filter);
        }

private IQueryable<User> Get_internal(UserFilter filter)
        {
            IQueryable<User> users = _context.Users;

            if (filter.Deleted != null)
            {
                users = users.Where(u => u.Deleted == filter.Deleted );
            }            

            return users;
        }
private IQueryable<User> Get_internal(UserFilter filter)
        {
            IQueryable<User> users = _context.Users;

            if (filter.Deleted != null)
            {
                users = users.Where(u => u.Deleted == filter.Deleted );
            }            

            return users.Select(x => new User() {
                Id = x.Id,
                Name = x.Name,
                //every property except your image property
                });
        }
public class User 
{
    public int Id { get; set; }

    [NotMapped]
    public string IgnoredField { get; set; }
}
public class MyContext : DbContext
{
    public DbSet<User> Users{ get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<User>()
            .Ignore(b => b.IgnoredField);
    }
}
/// <summary>
/// Get by Filter
/// </summary>
/// <param name="filter">user filters</param>
/// <returns></returns>
[Route("functionRoute")]
[HttpPost]

public IHttpActionResult GetUsersByFilter([FromBody] UserFilter filter)
{
            try
            {
                UserService service= new UserService ();
                List<User> list = service.GetByFilter(filter).Select(x => new User() {
                Id = x.Id,
                Name = x.Name,
                //every property except your image property
                }).ToList();

                List<UserCE> listCE = Mapper.Map<List<UserCE>>(list);

                return Ok(listCE);
            }
            catch (Exception ex)
            {
                TraceManager.LogError(ex);
                return InternalServerError(ex);
            }
}