1 回答
TA贡献1834条经验 获得超8个赞
我不是在 IIS 上托管 .NET Core 应用程序的专家,但如果不允许更改 IIS 服务器配置,则可能无法使此设置工作。我假设您需要将嵌套的 API 项目添加为网站,以使 IIS 实际运行它。
所以,看起来您需要某种多租户。由于您的问题是关于 Razor Pages,我认为我们在这里处理的是 ASP.NET Core,而不是经典的 ASP.NET(由您的标签建议)。
在 ASP.NET Core 中,使用应用程序分支设置多租户应用程序非常容易。在这种情况下,您的 Razor Pages 主项目的Startup.Configure方法将如下所示:
public void Configure(IApplicationBuilder app)
{
app.Map("/webapi", ConfigureWebApiBranch);
// configuration of your Razor Pages app pipeline...
app.UseMvc(...);
}
public void ConfigureWebApiBranch(IApplicationBuilder app)
{
// configuration of your Web Api app pipeline...
app.UseMvc(...);
}
当然,ConfigureWebApiBranch可以驻留在另一个程序集中,因此您可以保持两个项目在逻辑上分开。
关于此解决方案有一个问题。main 和 web api 分支共享在主项目的Startup.ConfigureServices中配置的同一个 DI 容器。但这也可以在必要时修复。您可以在此处找到对此的详细说明。
- 1 回答
- 0 关注
- 185 浏览
添加回答
举报