【问题标题】:How to use Put method in web api如何在 web api 中使用 Put 方法
【发布时间】:2021-06-09 06:58:02
【问题描述】:

这里是我的 put 方法

         
        [Route("api/SPSOnHand/itemcode/{item_code}")]
        [HttpPut]
        public HttpResponseMessage Put(String itemcode, [FromBody]SPS_ONHAND _member)
        {
           
            var memberdetail = (from a in db.SPS_ONHANDs where a.ITEM_CODE == itemcode select a).FirstOrDefault();
  
            if (memberdetail != null)
            {
      
                memberdetail.ONHAND_QTY = _member.ONHAND_QTY;
                memberdetail.OPR_ID = _member.OPR_ID;
                memberdetail.DATE = _member.DATE;
 
                db.SubmitChanges();

                  
                return Request.CreateResponse(HttpStatusCode.OK, memberdetail);
            }
            else
            {
                  
                return Request.CreateErrorResponse(HttpStatusCode.NotFound, "Invalid Code or Member Not Found");
            }


        }

这是我在提琴手中测试的内容

我应该怎么做.. 我想使用 itemcode 而不是 id 来更新我的表格

【问题讨论】:

  • 有太多可能出错的地方(例如查询字符串中缺少itemcode 值)。我建议您仅在正文中使用[FromBody]SPS_ONHAND 参数创建简单的api/SPSOnHand/itemcode 方法,并检查它是如何进行的。比你可以慢慢调整它并添加itemcode参数(并再次检查)

标签: c# android put webapi


【解决方案1】:

绑定参数必须与路由定义中的占位符同名。试试这个:

    [Route("api/SPSOnHand/itemcode/{item_code}")]
    [HttpPut]
    public HttpResponseMessage Put(string item_code, [FromBody]SPS_ONHAND _member)
    {  
         var memberdetail = (from a in db.SPS_ONHANDs where a.ITEM_CODE == item_code select a).FirstOrDefault();
         ....
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-07
    • 1970-01-01
    • 2012-09-03
    • 1970-01-01
    相关资源
    最近更新 更多