我正试图在我的ASP.NET核心5 Razor Pages web应用程序中创建一个API控制器。
我在Visual studio中一个名为Api
的文件夹中创建了Api控制器。
然后,当我尝试运行以下url来测试api控制器是否工作时,我得到了一个404未找到:
https://localhost:345345/api/saveimage
我错过了什么?
Api控制器(SaveImageController.cs(:
[Route("api/[controller]")]
[ApiController]
public class saveImageController : ControllerBase
{
[HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "test", "test2" };
}
}
即使使用文件夹"Api";为了使控制器正常工作,通常将控制器保存在名为"的文件夹中;控制器";。
请注意,Razor页面使用基于文件夹的路由,这不适用于控制器。
在Startup#ConfigureServices中,确保您有以下内容:
services.AddControllers();
在启动#配置中,请确保您有以下内容:
app.UseEndpoints(endpoints =>
{
endpoints.MapRazorPages();
endpoints.MapControllers();
});