在Web API 2的模板中,POST方法始终如下所示:

[ResponseType(typeof(MyDTO))]
public IHttpActionResult PostmyObject(MyDTO myObject)
{
    ...
    return CreatedAtRoute("DefaultApi", new { id = myObject.Id }, myObject);
}

我不明白这种方法.谁能给我解释一下吗?

推荐答案

当您调用POST方法来存储某些新对象时,CreatedAtRoute方法用于将URI返回给新创建的资源. 因此,例如,如果您发布了一个订单项目,您可能会返回一个类似‘api/order/11’的路由(11显然是订单的id).

顺便说一句,我同意MSDN文章对理解这一点没有用.您实际返回的路由自然取决于您的路由设置.

Asp.net相关问答推荐

Visual Studio发布的网站得到错误类型JObject is not defined when page is load on server"''"

无法从部署在应用程序负载均衡器后面的 AWS ECS 上的应用程序发送 HTTP/S 请求

JWT 和 Google 在 Razor 页面中进行身份验证和授权

Swashbuckle 通过 .NET 应用程序中的 XML 注释使用格式标识符

如何为发布模式设置调试错误

更改 GridView 中列的标题文本

如何在集线器类之外获取 SignalR 用户连接 ID?

如何从 RouteData 获取路由名称?

__doPostBack 未定义

如何更改 .ASPX 自动格式化设置 (Visual Studio)

与将 Web 应用程序保存在一个默认应用程序池中相比,拥有专用应用程序池的优缺点

是否应该将 project.lock.json 文件签入源代码管理? (ASP.NET 核心 1.0)

.NET 上的 HTTP/2(HTTP2 或 SPDY)

Owin.IAppBuilder不包含MapSignalR的定义

如何验证用户在 CheckBoxList 中 Select 了至少一个复选框?

缩小 ASP.Net MVC 应用程序的 HTML 输出

如何从 ASP.NET 中的数据表/数据视图中 Select 前 n 行

asp.net 网站上的第一页加载缓慢

ASP.NET MVC NonAction 含义

使用 NLog 在 ASP.NET Web API 2.1 中进行全局异常处理?