我在Owin Environment中存储每个请求数据。在框架中的任何地方,我都可以通过Request.GetOwinContext()
扩展来获取Owin上下文。
但是在MediaTypeFormatter中我无法访问HttpRequest,HttpContext或类似内容。 HttpContext.Current
不是理想的解决方案。
我已经尝试使用GetPerRequestFormatterInstance
,但它仅用于响应序列化,而不用于请求反序列化。
IContentNegotiator
也未被调用。
答案 0 :(得分:0)
一般来说,从格式化程序中获取请求信息是Web API中的一个已知限制,而GetPerRequestFormatterInstance
是一种解决方法,正如您所知,只支持响应方......这里的核心问题是{ {1}}(哪个Web API依赖于)库System.Net.Http
没有提供相应请求/响应的后向指示...在ASP.NET vNext
中我猜这不应该是一个问题......无论如何,我有兴趣了解你的情景,以便它可以帮助我们在未来的设计......