ASP.NET Core 2.2 Возвращает 404 для каждого другого контроллера - PullRequest
0 голосов
/ 20 июня 2019

Я работаю над основным приложением ASP.NET, и один из моих контроллеров работает нормально. Но каждый контроллер после этого, похоже, не работает, возвращая 404.

Этот контроллер отвечает, как и ожидалось:

namespace App.Controllers {
    [Route("api/[controller]")]
    public class AccountController : CustomControllerBase {...}
}

Но этот контроллер и все остальные возвращают 404:

namespace App.Controllers {
    [Authorize]
    [Route("api/[controller]")]
    public class UserController : CustomControllerBase {...}
}

CustomControllerBase выглядит следующим образом:

namespace App.Controllers {
    [ApiController]
    public class CustomControllerBase : ControllerBase {
        public CustomControllerBase() {
        }
    }
}

И мой Startup.cs выглядит так:

namespace App {
    public class Startup {
        public Startup(IConfiguration configuration) {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services) {
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
            services.AddDbContext<DatabaseContext>(options => options.UseMySql(Configuration.GetConnectionString("MySQLConnection")));
            services.AddIdentity<ApplicationUser, IdentityRole>().AddEntityFrameworkStores<DatabaseContext>();
            services.AddScoped<IUserService, UserService>();

            services.Configure<JWTSettings>(Configuration.GetSection("JWT"));
        }
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env) {
            if (env.IsDevelopment()) {
                app.UseDeveloperExceptionPage();
            } else {
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }

            app.UseHttpsRedirection();
            app.UseMvc(routes => {
                routes.MapRoute(
                    name: "default",
                    template: "{controller=Home}/{action=Index}/{id?}"
                    );
                });
            app.UseAuthentication();
        }
    }
}

Есть идеи? Я застрял на этом в течение нескольких дней, и я не могу понять, что я делаю неправильно.

Спасибо

...