【问题标题】:404 when passing two parameters to an api将两个参数传递给 api 时出现 404
【发布时间】:2021-02-17 22:27:45
【问题描述】:

我正在尝试在 .net core 3.1 上制作一个简单的 api,我删除了默认的东西。我设置了一个新起点,但尽管付出了很多努力和改变,我仍然得到了 404

app.UseEndpoints(endpoints =>
{
                endpoints.MapControllers();
});

在属性中,启动资源管理器:

api/Servicio/GetServicio/tecnico/Pedro/semanaDelAno/8

控制器

[Route("api/Servicio")]
    public class ServicioController : Controller
    {
        private readonly ApplicationDbContext _context;

        public ServicioController(ApplicationDbContext context)
        {
            _context = context;
        }

        // POST: api/PostServicio
        [HttpPost]
        public async Task<ActionResult<Servicio>> PostServicio(Servicio servicio)
        {
            _context.Servicio.Add(servicio);
            await _context.SaveChangesAsync();
            
            return CreatedAtAction(nameof(GetServicio), new { id = servicio.Id }, servicio);
        }


        // GET: api/GetServicio/5
        //[HttpGet("{tecnico}/{semanaDelAno}")]
        [HttpGet("GetServicio/{tecnico}/{semanaDelAno}")]
        public async Task<ActionResult<Servicio>> GetServicio(string tecnico, int semanaDelAno)
        {
            var servicio = await _context.Servicio.FirstOrDefaultAsync(i => i.Tecnico == tecnico && i.SemanaDelAno == semanaDelAno);

            if (servicio == null)
            {
                return NotFound();
            }

            return servicio;
        }

【问题讨论】:

    标签: c# asp.net-mvc api asp.net-core .net-core


    【解决方案1】:

    假设 tecnico=Pedro 和 semanaDelAno=8,你必须使用这个 url

    ~/api/Servicio/GetServicio/Pedro/8
    

    对于 GetServicio 操作:

    [HttpGet("GetServicio/{tecnico}/{semanaDelAno}")]
    public async Task<ActionResult<Servicio>> GetServicio(string tecnico, int semanaDelAno)
    {
    .... your code
    }
    

    【讨论】:

      猜你喜欢
      • 2017-03-08
      • 2017-10-21
      • 1970-01-01
      • 2020-02-05
      • 2020-12-15
      • 1970-01-01
      • 1970-01-01
      • 2019-10-27
      • 1970-01-01
      相关资源
      最近更新 更多