asp.net-web-api – ASP.NET WebAPI支持每种方法的媒体类型
发布时间:2020-12-16 07:00:05 所属栏目:asp.Net 来源:网络整理
导读:给定控制器中的方法: public class CustomerController : ApiController{ [HttpGet] public CustomerDto GetById([FromUri] int id) { . . return customerDto }} 有没有办法用属性指定支持的媒体类型?例如,CustomerDto是一个复杂的类,只能使用JSON(applic
给定控制器中的方法:
public class CustomerController : ApiController { [HttpGet] public CustomerDto GetById([FromUri] int id) { . . return customerDto } } 有没有办法用属性指定支持的媒体类型?例如,CustomerDto是一个复杂的类,只能使用JSON(application / json)而不是XML(application / xml)进行序列化,但也可以接受PDF(application / pdf).有这样的事情: [HttpGet(Accepts.JSON,Accepts.PDF)] or [HttpGet][AcceptJSON][AcceptXML] or [HttpGet][Accept("application/json")][Accept("application/pdf")] 如果不支持传入请求,则可能会返回不支持的异常/状态. 注意 – 我不想全部删除说XML序列化,因为全局可以完成.相反,我想定义每条路线接受的内容. 使用 – ASP.NET WebAPI RC 1(需要升级)自托管 解决方法
听起来像自定义ActionFilterAttribute可能会成功.
创建一个继承自System.Web.Http.Filters.ActionFilterAttribute的新类,重写OnActionExecuting方法.在此方法中,您可以检查请求的标头,查找您不想支持的内容并返回适当的响应. 自定义ActionFilterAttribute的构造函数可以获取要处理的“接受”类型以及要拒绝的类型的详细信息. 有关自定义ActionFilterAttribute的示例,请查看this post. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- AutoMapper在asp.netcore中的使用
- ASP.NET MVC用户 – 您是否想念WebForms中的任何内容?
- asp.net – 在没有完全回发的情况下,在AJAX更新面板中上传文
- asp.net-web-api – 如何记录webapi中控制器中执行的操作方
- asp.net – 使用IIS7应用程序请求路由修改标头
- asp.net – 您如何看待Postgres和Firebird数据库?
- angularjs_百度地图API_根据经纬度定位_示例
- asp.net-mvc-3 – 如何在本地测试时禁用elmah发送电子邮件?
- asp.net – 加入LINQ的2个列表?
- asp.net – 服务应用程序池“X”的进程与Windows进程激活服
推荐文章
站长推荐
- asp.net-mvc – 在Ubuntu 16.04中运行ASPNET Cor
- 如何获取基于PhoneGap的应用程序来对ASP.NET For
- ASP.NET CAPTCHA实现
- 详解ASP.NET Core 中的框架级依赖注入
- asp.net-mvc-4 – 在IIS 7.5中注册.NET Framewor
- ASP.NET Core 2.1身份:如何删除默认UI剃刀页面?
- ASP.NET网址MAX_PATH限制
- asp.net-mvc – DotNetOpenAuth在ASP.NET MVC中的
- asp.net 操作FTP作为数据中转-Helper.cs
- asp.net-mvc – 程序集使用System.Web.Http 5.1,
热点阅读