我已经对此进行了大量研究,但无法弄清楚出了什么问题。官方文档(服务器 API 和插件)在这里对我没有多大帮助。
我的解决方案如下所示:
- XSocketsControllers
- 定义长时间运行的控制器 A 和标准控制器 B
- WebServer(参考 XSocketsControllers)
由于文档说 XSockets 将在 bin (正在复制程序集的位置)下自行发现任何感兴趣的内容,因此我的 Web.Config 具有以下内容:
<add key="XSockets.PluginCatalog" value=""/>
<add key="XSockets.PluginFilter" value="*.dll"/>
我的引导程序运行正常,如果我调试服务器容器,我可以看到我的 IXBaseServerContainer 的 XSocketPlugins 属性包含我的控制器 A 和 B,但是如果我尝试从浏览器连接到控制器 B,例如,连接已建立但框架说“在加载的插件中找不到处理程序名称”。如果我连接到“通用”控制器,那么它工作正常。
我在这里想念什么?
此外,控制器发现如何工作?我玩过 XSockets.Sample.StockTicker 示例,注意到“/Stock”被击中,但没有确切名称的控制器 - 有一个 StockController 和一个 StockTickerController 类。