• .net C# Web Api 调试获取请求的参数,通过HttpContextBase获取请求参数


    转自:http://www.cnblogs.com/tianma3798/p/5089890.html

    WEBAPI中的Request是HttpRequestMessage类型,不能像Web传统那样有querystring和from 方法接收参数,而传统的HttpReqest的基类是HttpReqestBase

    所以这里我们就直接使用(HttpContextBase)Request.Properties["MS_HttpContext"]

    复制代码
    public void Post([FromBody]string value)
    {
        HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"];//获取传统context
        HttpRequestBase request = context.Request;//定义传统request对象            
        string name = request.Form["name"];    
    }
    复制代码

    1.获取遍历路由参数

    复制代码
    //获取路由参数
    IDictionary<string, object> dic = this.RequestContext.RouteData.Values;
    StringBuilder builder = new StringBuilder();
    foreach (var item in dic)
    {
        builder.AppendFormat("key:{0},value:{1}", item.Key, item.Value);
        builder.AppendLine();
    }
    return builder.ToString();
    复制代码

    2.遍历表单参数

    复制代码
    ////获取表单参数
    HttpContextBase context = (HttpContextBase)Request.Properties["MS_HttpContext"];//获取传统context
    HttpRequestBase request = context.Request;//定义传统request对象  
    StringBuilder builder = new StringBuilder();
    foreach (string item in request.Form.Keys)
    {
        builder.AppendFormat("key:{0},value:{1}", item, request.Form[item]);
        builder.AppendLine();
    }
    return builder.ToString();
    复制代码

  • 相关阅读:
    使用指针的误区之指针未初始化
    实验室react项目名词解释
    生活感悟之大学
    git 快速入门
    口才锻炼
    narcissus
    crest value &minimum
    factorial
    Str_turn
    array_x
  • 原文地址:https://www.cnblogs.com/wangdongying/p/10843373.html
Copyright © 2020-2023  润新知