我正在使用 Azure 云服务并具有 Web 和 Worker 角色。Web 角色提供静态 HTML/JS/CSS 文件,而 Worker 角色运行 WebAPI 代码并由 OWIN 托管。
当我发布该服务时,如果立即使用它,一切都会正常工作。但是在一段时间不活动之后,它会为所有不需要依赖项的请求提供服务,但无法为所有其他请求提供服务。
例如,我有一个继承 ApiController 的 SimpleController 和继承 MyController 的 CustomController 将其连接到 DB,并且我在我引用的核心 DLL 中有它。
在一些不活动之后,继承 ApiController 的 SimpleController 就像一个魅力。但是 MyController,在另一个 DLL 中具有基类的那个不再起作用了。
我认为 Azure 可能正在回收角色,并且由于不活动而以某种方式引用它,并且仅重建主要角色 DLL(所有系统 DLL 都可用),而不是自定义引用。
我将所有自定义引用属性 CopyLocal 设置为 True 并且它在发布后就可以工作,所以这个问题不应该是一个..
有什么想法可以调试这种类型的场景吗?
PS 我一直在调试不工作的控制器,它实际上调用了 MyController 类的控制器,但是当它必须转到连接到 DB 的基本控制器时失败。