首页 文章

选择Linq不能隐式转换类型byte []到System.web.httpPostedFileBase

提问于
浏览 664
0

我正在尝试连接多个表的linq选择,并且表中的1个由字节数据类型组成 .

我的ViewModel如下:

public class ServiceRequestsViewModel
{
    public HttpPostedFileBase Attachment { get; set; }
}

我的控制器如下:

public IEnumerable<ServiceRequestsViewModel> ServiceRequestGetAll()
    {
        var result = (from srv in DB.Services
                      join srq in DB.ServiceRequests on srv.Id equals srq.ServiceId 
                      join srp in DB.ServiceApprovers on srq.ServiceId equals srp.ServiceId
                      select new ServiceRequestsViewModel
                      {
                          Id = srq.Id,
                          ServiceId = srq.ServiceId,
                          RequestorId = srq.RequestorId,
                          ApproverId = srp.UserId,
                          Name = srv.Name,
                          Description = srq.Description,
                          Status = srq.Status,
                          Attachment = srq.Attachment,
                          CreatedBy = srq.CreatedBy,
                          CreatedDate = srq.CreatedDate
                      })
                      ;
        return result.GroupBy(x => x.Id).Select(group => group.FirstOrDefault()).OrderByDescending(a => a.Status).ThenByDescending(b => b.CreatedDate);
    }

对于Attachment = srq.Attachment,我遇到错误:无法将类型byte []隐式转换为System.Web.HttpPostedFileBase .

1 回答

  • 0

    HttpPostedFileBase 是一个包装类,因此您可以访问客户端通过此调用上传的数据 .

    通过电话,您不在那种情况下 .

    您的数据已存在于数据库中 . 您需要选择不同的数据类型以将该数据返回给客户端 . byte[] (你已经拥有)对你的情况可能没问题,我们无法知道,这是你的工作决定 .

相关问题