在 Startup.cs 中添加 app.UsePathBase() 方法来修正路由问题。示例代码如下:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// 添加此行代码
app.UsePathBase("/myapplication");
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Error");
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
});
}
在上面的示例中,我们将应用程序的根路径设置为 /myapplication
,这代表应用程序的地址就变成了 http://yourdomain.com/myapplication
,这样就可以避免路由出现问题。