我的问题是如何将多个参数传递给 DELETE 请求。
我的 Controller 类如下,
namespace MYAPI1.Controllers
{
public class TaskController : ApiController
{
// DELETE: api/Task/5
[Route("api/Task/id1/id2/{id3}")]
public void Delete(int id,int id2, string id3)
{
TaskPersistent tp = new TaskPersistent();
tp.deleteTask(id,id2,id3);
}
}
}
TaskPersistent.class 如下,
public class TaskPersistent
{
public void deleteTask(int id, int id2, string id3)
{
try
{
string sqlString = "DELETE from devproj WHERE (DeveloperID, ProjectID, WorkDate) = VALUES ('" + id + "', '" + id2 + "', '" + id3 + "');";
MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand(sqlString, conn);
cmd.ExecuteNonQuery();
long x = cmd.LastInsertedId;
}
catch (Exception x)
{
Console.WriteLine(x);
}
}
}
我尝试像这样使用 postman 来使用它,http://localhost:10927/api/Task?id1=1&id2=5&id3="2018-03-14" 但它不起作用,请帮我解决这个问题。
请您参考如下方法:
尝试以下操作
[Route("api/Task/{id:int}/{id2:int}/{id3}")]
public void Delete(int id,int id2, string id3)
{
TaskPersistent tp = new TaskPersistent();
tp.deleteTask(id,id2,id3);
}
通过以下方式调用:http://localhost:10927/api/Task/1/2/ "2018-03-14"
--- 或 ---
[Route("api/Task")]
public void Delete(int id,int id2, string id3)
{
TaskPersistent tp = new TaskPersistent();
tp.deleteTask(id,id2,id3);
}
通过以下方式调用:http://localhost:10927/api/Task?id=1&id2=2&id3= "2018-03-14"
