fsjflsjfl
2021-08-27 17:27
采纳率: 66.7%
浏览 37

asp.net core 5 api 404, 同一个项目,两个控制器,一个正常,另一个一直404,请问有人能帮解答吗?

如题。跨域已设置在控制器基类。 同样的而命名空间。为了减少阅读量,方法体里面的内容删掉了,里面内容不会报错,就是简单的接收参数返回参数。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using DBLayer;
using DBLayer.InterFace.Models;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
 [Route("api/[controller]/[action]")]
 [ApiController]
 public abstract class b: MyControllerBaseController
 {
    [HttpPost]
    public IActionResult a([FromBody] Guid id)
    {}
 }

这个一直404,用Postman测试,传入的方式和参数一样。

另外这个就成功:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using DBLayer;
using DBLayer.InterFace;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;

 [Route("api/[controller]/[action]")]
 [ApiController]
 public class HomeController : MyControllerBaseController
 {
        [HttpPost]
        public JsonResult Test([FromBody] Guid obj)
        {}
 }

请问有人能帮解答吗?

  • 好问题 提建议
  • 收藏

2条回答 默认 最新

  • Rena Ni 2021-08-30 15:58
    已采纳

    你把abstract删掉就好了,抽象类是调用不到的。

    已采纳该答案
    评论
    解决 2 无用
    打赏 举报
  • fsjflsjfl 2021-08-30 16:20

    错误原因在于您使用了抽象控制器

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题