C# 不允许从Asp.Net核心Webapi返回405方法
在下面的API控制器中,如果在API上调用POST或PUT,如何返回405方法Not allowed。目前它返回404未找到C# 不允许从Asp.Net核心Webapi返回405方法,c#,asp.net-web-api,asp.net-core,C#,Asp.net Web Api,Asp.net Core,在下面的API控制器中,如果在API上调用POST或PUT,如何返回405方法Not allowed。目前它返回404未找到 [HttpGet] public ActionResult<IEnumerable<Customer>> Get() { string query = "select* from Customers;"; try {
[HttpGet]
public ActionResult<IEnumerable<Customer>> Get()
{
string query = "select* from Customers;";
try
{
List<Customer> collection = GetCustomers(query);
return Ok(collection);
}
catch (System.Exception)
{
return BadRequest();
}
}
[HttpGet]
公共行动结果获取()
{
string query=“从客户中选择*”;
尝试
{
列表集合=获取客户(查询);
返回Ok(收款);
}
捕获(系统异常)
{
返回请求();
}
}
本线程将讨论此问题:
本帖将讨论此问题:
您有一个
[HttpGet]
属性。net core将自动执行405。如果您现在尝试使用Post或Put调用端点,会发生什么情况?我相信它给出了405返回404未找到哪里定义了GetCustomers
?那么您的路线是错误的。i、 它实际上是一个404。如果您使用GET以外的任何东西来执行该实际操作,那么您将获得405。您有一个[HttpGet]
属性。net core将自动执行405。如果您现在尝试使用Post或Put调用端点,会发生什么情况?我相信它给出了405返回404未找到哪里定义了GetCustomers
?那么您的路线是错误的。i、 它实际上是一个404。如果你用的是除GET以外的任何东西,那么你会得到405。