我已经开始在自托管模式下测试 Nancy。到目前为止,除了一个让我烦恼的问题之外,一切都很好:我如何防止它在开发时缓存我的视图?
我确实注意到一条评论说视图缓存应该在调试模式下被禁用,但它似乎对我不起作用——每当我对 HTML 进行更改时,我都必须重新启动我的应用程序。
我正在使用带有内置超级简单视图引擎和 .html 文件的 Nancy 0.10。
在调试模式下默认禁用缓存。我唯一能想到的是,在自主机(即非 Web 项目)中运行时,调试模式检测可能存在错误。
你能试试下面的
如果 DisableCaches 为真,则忽略在 DefaultViewCache 类型中使用缓存https://github.com/NancyFx/Nancy/blob/master/src/Nancy/ViewEngines/DefaultViewCache.cs#L30
TheCodeJunkies 答案适用于 Nancy 的 1.x 版。
对于 Nancy 的 2.x,runtimeViewDiscovery
andruntimeViewUpdates
属性处理视图是否被缓存。这可以在您的NancyBootstrapper
课程中更改,如下所示:
public class NancyBootstrapper : DefaultNancyBootstrapper
{
public override void Configure(INancyEnvironment environment)
{
base.Configure(environment);
environment.Views(runtimeViewDiscovery: true, runtimeViewUpdates: true);
}
}