IHttpModule筛选器写入方法不是asp.net
我试图更改响应以获取jsonp(用于web服务),但问题是从来没有调用过write方法,只在最后调用flush(),url是 本地主机:8080/api/employees 它的调用web api和employee是一个控制器文件 调用的控制器方法IHttpModule筛选器写入方法不是asp.net,asp.net,jsonp,asp.net-web-api,Asp.net,Jsonp,Asp.net Web Api,我试图更改响应以获取jsonp(用于web服务),但问题是从来没有调用过write方法,只在最后调用flush(),url是 本地主机:8080/api/employees 它的调用web api和employee是一个控制器文件 调用的控制器方法 public List<Models.Employee> Get() { var employees = from e in _context.Employees
public List<Models.Employee> Get() {
var employees = from e in _context.Employees
select new Models.Employee {
Id = e.EmployeeID,
FirstName = e.FirstName,
LastName = e.LastName
};
return employees.ToList();
}
现在JsonResponseFilter.write不被称为这就是问题所在,任何人都请回复以解决它您做错了。不要使用任何IHTTP模块。在Web API中实现这一点的正确方法是使用自定义API。例如,您可以在
应用程序_Start
中集成一个,它将为您的web方法启用JSONP:
var config = GlobalConfiguration.Configuration;
config.Formatters.Insert(0, new JsonpMediaTypeFormatter());
var config = GlobalConfiguration.Configuration;
config.Formatters.Insert(0, new JsonpMediaTypeFormatter());