我正在研究Web API项目,并且遇到以下问题:
我尝试使用以下网址(https://localhost:44328/api/Users/GetUserBy?username=myusername&password=mypassword)调用名为“ GetUserBy”的操作方法,但在浏览器中收到的结果如下所示:
{"id":["The value 'GetUserBy' is not valid."]}
以下是我的UsersController:
[Route("api/[controller]")]
[ApiController]
public class UsersController : ControllerBase
{
// GET: api/Users
[HttpGet]
public IEnumerable<User> GetUsers()
{
//this works
//code removed for simplicity
}
//GET: api/Users/5
[HttpGet("{id}")]
public async Task<IActionResult> GetUser([FromRoute] int id)
{
//this works too
}
[HttpGet("Users/GetUserBy")]
public async Task<IActionResult> GetUserBy([FromQuery]string username, [FromQuery]string password)
{
//this doesn't work
}
}
当我在此方法上插入断点时,无论我是否调用它,代码执行似乎都不会出现。
我在startup.cs文件中添加了以下代码,但没有任何更改。
app.UseMvc(
routes =>
{
routes.MapRoute("GetUserBy", "{controller=Users}/{action=GetUserBy}");
}
);
我也访问了以下网页,但找不到答案。
https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/routing?view=aspnetcore-2.1
参考方案
尝试从此更改标签:
[HttpGet("Users/GetUserBy")]
对此:
[HttpGet("GetUserBy")]
您已经将其路由到控制器用户
ASP.NET Web API 2中AuthorizeAttribute发生了什么变化? - c#我已经将项目和一组单元测试从ASP.NET Web API升级到ASP.NET Web API 2。我们将自定义DelegatingHandler用于自定义身份验证机制。它将Thread.CurrentPrincipal和HttpContext.Current.User设置为适当的System.Security.Claims.ClaimsPrincipal。…
调用SignalR Hub不适用于Asp.Net Core Web API - c#我是SignalR的新手。我正在尝试设置一个Asp.Net Core WebAPI,以便其他客户端可以使用SignalR连接到它并获取实时数据。我的Hub类是:public class TimeHub : Hub { public async Task UpdateTime(string message) { await Clients.All.SendAs…
如何在多台服务器中发布Web API Net Core 3.0 - c#我有一个带有.net core 3.0的Web API,并且我想同时在10台服务器(使用Windows Server)中发布,我可以使用哪种工具来实现?您是否曾经做过类似的任务? 参考方案 这个问题有多个答案,我将尝试解释这些概念,然后由您决定。发布命令dotnet publish - IIS-您可以使用它来创建部署包,即需要放在IIS上的文件夹(如果这是您…
如何捆绑.Net Core API + Angular前端 - c#我有一个面向公众的有角前端,它碰到了.NetCore后端。使用webpack将两个项目捆绑在一起。问题是,我需要启用服务器端渲染,并且Microsoft已弃用/ made UseSpaPrerendering。我确实遵循了这个tutorial,但是它在.net core 3.0 / 3.1中根本无法很好地工作。当我开始工作时,我得到一个FOUC(未渲染内容的…
ASP.NET Core Singleton实例与瞬态实例的性能 - c#在ASP.NET Core依赖注入中,我只是想知道注册Singleton实例是否会比注册Transient实例更好地提高性能?在我看来,对于Singleton实例,创建新对象和相关对象只需花费一次时间。对于Transient实例,此成本将针对每个服务请求重复。因此Singleton似乎更好。但是,在Singleton上使用Transient时,我们可以获得多…