7

セルフホストモードでナンシーのテストを開始しました。これまでのところ、私を苛立たせている1つの問題を除けば、非常に優れています。開発中にビューがキャッシュされないようにするにはどうすればよいですか。

デバッグモードではビューキャッシュが無効になっているはずだというコメントに気づきましたが、機能していないようです。HTMLに変更を加えるたびに、アプリケーションを再起動する必要があります。

組み込みの超シンプルなビューエンジンと.htmlファイルでNancy0.10を使用しています。

4

2 に答える 2

5

デバッグモードでは、キャッシュデフォルトで無効になっています。私が考えることができる唯一のことは、セルフホスト(つまり非Webプロジェクト)で実行しているときにデバッグモードの検出にバグがある可能性があるということです。

次のことを試してください

  • デバッグモードでビルドしていることを確認し、 StaticConfiguration.DisableCachesの値を確認して、それがtruefalseかを知らせてください
  • StaticConfiguration.DisableCachesを 明示的にtrueに設定してみて、ビューのキャッシュが停止するかどうかを確認してください

DisableCachesがtrueの場合、DefaultViewCacheタイプのキャッシュの使用を無視しますhttps://github.com/NancyFx/Nancy/blob/master/src/Nancy/ViewEngines/DefaultViewCache.cs#L30

于 2012-03-02T13:49:04.123 に答える
3

TheCodeJunkiesの回答は、ナンシーのバージョン1.xで機能します。

2.x of Nancyの場合、ビューがキャッシュされているかどうかに関係なくruntimeViewDiscovery、プロパティが処理します。これは、次のようにクラスでruntimeViewUpdates変更できます。NancyBootstrapper

public class NancyBootstrapper : DefaultNancyBootstrapper
{
    public override void Configure(INancyEnvironment environment)
    {
        base.Configure(environment);
        environment.Views(runtimeViewDiscovery: true, runtimeViewUpdates: true);
    }
}
于 2019-01-10T19:12:09.270 に答える