首页 > 解决方案 > 在 ASP.NET CORE APPLICATION 中将请求从 GET 转换为 POST

问题描述

我需要在两种情况下将请求从 get 转换为 post: - 在标准控制器的情况下 - 在 asp.net core c# 项目中的 web api 的情况下。

以下是方法声明。标准控制器:

public async Task<IActionResult> Details(string id)

Web API 控制器:

[HttpGet("{deviceIdorId}/{action2}")] 
public async Task<IEnumerable<CosmosDBTelemetry>> GetAsync(string deviceIdorId,string action2)   

我应该怎么办?

谢谢,

西蒙娜

标签: asp.net-mvcpostasp.net-coreasp.net-web-apiget

解决方案


对于将 HttpGet 方法转换为发布,您可以创建一个视图模型来传递数据。例如:

网络接口

public class ApiDto
{
      public string deviceIdorId { get; set;}
      public string action2{ get; set;}
}

[HttpPost("ActionName")] 
public async Task<IEnumerable<CosmosDBTelemetry>> ActionName(ApiDto dto)  

控制器:

public class IdDto
{
      public string Id{ get; set;}
}
[HttpPost()]
public async Task<IActionResult> Details(IdDto id)

推荐阅读