在 Startup.cs 中我想配置 2 个中间件:
- 处理 websocket 请求但需要特定动态路由端点的 app.Use(或 app.Map with app.Use)。
- 具有属性路由的 app.UseMvc()。
在这种情况下,如何在 MVC 中创建和重用路由器?
附言。这是我的相关问题,我从不同的角度看待同一个问题:Opening a websocket channel inside MVC controller
最佳答案
我有类似的问题,在检查源代码后我发现 UseMvc
方法创建了它自己的 RouteBuilder
和 IRouter
实例。这意味着您在使用 UseMvc
时无法控制路由创建。
所以我建议创建一个 UseMvc
的替代方案,它将创建两个路由映射到不同的处理程序,一个映射到 Mvc,第二个映射到 Websocket。虽然我还没有测试过,但希望它能有所帮助。
关于c# - 是否可以在多个中间件中使用同一个路由器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35587656/