我有一个仅 Controllers (WebAPI)的ASP.NET Core项目。 我意识到Microsoft Bot只是ASP.NET服务器的中间件,甚至是在WebHost启动方法中定义的。
我可以将现有项目添加到该机器人的中间件中吗? 它会保留使用REST直接访问端点的功能吗?
答案 0 :(得分:2)
这绝对是100%可行的,并且从一开始就是集成层的目标之一。
您要确保的一件事是,将.UseBotFramework()
调用放在.UseMvc()
调用之前,以便它在处理请求时具有优先级,而默认MVC路由不会结束并吞下请求。
对于具有静态文件,漫游器和MVC控制器的基本网络应用,我建议以下顺序:
public void Configure(IApplicationBuilder app)
{
app.UseDefaultFiles()
.UseStaticFiles()
.UseBotFramework()
.UseMvc();
}