我已遵循 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;
}