使用 Compression.Server 包压缩响应

时间:2021-01-16 10:40:04

标签: c# asp.net compression gzip webapi

我已遵循 https://benfoster.io/blog/aspnet-web-api-compression 进行 API 压缩。

下面我都做了

1.安装 Nuget 包

Microsoft.AspNet.WebApi.Extensions.Compression.Server

2.在Global.asax.cs里面的Application_Start()里面我加了

  GlobalConfiguration.Configuration.MessageHandlers.Insert(0, new 
  ServerCompressionHandler(new GZipCompressor(), new DeflateCompressor()));

3.添加CompressionHandler & CompressedContent

所以现在我有下面的函数,它接受一个自定义请求并返回一个自定义响应。我想将响应作为压缩数据返回,但我不知道我添加的包和类将如何与我的函数链接

public EmployeeResponse getEmpList()
{
    EmployeeResponse response = new EmployeeResponse();
    using (var db = new MyEntities())
    {
        response.employeesList = db.ViewEmployees.Where(p => p.ID == 5).ToList();
        if (response.employeesList == null || response.employeesList.Count == 0)
        {
            response.HasError = true;
            response.ErrorMessage = "Empty List";
            return response;
        }

        response.HasError = false;

    }

    return response;
}

0 个答案:

没有答案
相关问题