我尝试将WCF Web服务重新创建为在Web方法上具有以下属性的MVC Web API:
[WebInvoke(Method = "*", BodyStyle = WebMessageBodyStyle.WrappedRequest)]
VB:
<WebInvoke(Method = "*", BodyStyle = WebMessageBodyStyle.WrappedRequest)> _
创建包装请求的MVC Web API是什么方式?
答案 0 :(得分:0)
我遇到同样的问题但找不到任何解决方案,但是,以下是我的解决方法。
将WrappedResponse创建为名称/值结构。
public class WrappedResponse<T>
{
public List<T> SampleCollection { get; set; }
public static WrappedResponse<T> GetResult(List<T> list)
{
var result = new WrappedResponse<T>();
result.SampleCollection = list;
return result;
}
}
返回WrappedResponse实例。
[Route("Products")]
public IHttpActionResult Get()
{
Configuration.Formatters.Clear();
Configuration.Formatters.Add(new JsonMediaTypeFormatter());
using (var context = new AdventureWorks2012Entities())
{
List<Product> productsList = context.Products.Take(10).ToList();
var result = WrappedResponse<Product>.GetResult(productsList);
return Ok(result);
}
}