【问题标题】:WCF to MVC Web API for WebInvoke Attribute (BodyStyle = WrappedRequest)WCF 到 MVC Web API 的 WebInvoke 属性(BodyStyle = WrappedRequest)
【发布时间】:2014-06-26 18:44:35
【问题描述】:

我正在尝试将 WCF Web 服务重新创建到 MVC Web API 中,该 API 在 Web 方法上具有以下属性:

[WebInvoke(Method = "*", BodyStyle = WebMessageBodyStyle.WrappedRequest)]

VB:

<WebInvoke(Method = "*", BodyStyle = WebMessageBodyStyle.WrappedRequest)> _

什么是 MVC Web API 创建包装请求的方式?

【问题讨论】:

    标签: .net wcf asp.net-web-api


    【解决方案1】:

    我有同样的问题,但找不到任何解决方案,但是,以下是我的解决方法。

    将 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);
                }
            }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-12
      • 1970-01-01
      • 1970-01-01
      • 2012-04-21
      • 2012-11-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多