【问题标题】:why does .net web api use 2 parameters instead of 1 for put methods?为什么 .net web api 使用 2 个参数而不是 1 个用于 put 方法?
【发布时间】:2015-08-26 03:45:13
【问题描述】:

为什么 .NET Web API 使用 2 个参数而不是 1 个参数进行 PUT 服务调用?因此,与其简单地传递一个 Account 对象,似乎标准是将 accountId 和 Account 作为单独的参数传递。 Web API 是否以这种方式工作以支持 REST 行业标准?任何人都可以在这里解释这个特定实现的目的吗?它似乎与传统 SOA 不同,后者的所有参数都封装在请求和响应对象中。

【问题讨论】:

标签: c# web-services rest asp.net-web-api soa


【解决方案1】:

PUT 将消息正文(您的实体对象)发送到该实体的特定 URI(例如 /rest/api/itemtype/1234)。当您在 WebAPI 中实现此功能时,您会得到如下签名:

public object Put(int id, object entity){...}

所以,第一个参数是取自 URI 的 ID,第二个参数是转换为强类型对象的消息体。这是 RESTFul 系统中 PUT 的标准用法。

【讨论】:

    猜你喜欢
    • 2018-11-03
    • 1970-01-01
    • 2017-02-24
    • 2010-10-28
    • 1970-01-01
    • 2021-12-01
    • 2021-01-30
    • 1970-01-01
    • 2015-05-03
    相关资源
    最近更新 更多