0

私たちが直面している問題は、.less ファイルを含む 2 つのバンドルを定義したことです。任意の条件に基づいて、一度に 1 つのバンドルを使用したり、別のバンドルを使用したりしたいと考えています (バンドルがほぼ同一であると想像してください。ただし、外観上の小さな違いがある場合があります)。

_layout.cshtml に次の内容があるとします。

    @{
        var bundleName="~/Content/LessBundle";
        if (DateTime.Now.Minute % 2 == 1)
        {
            bundleName="~/Content/LessBundle_v2";
        }
        @Styles.Render(bundleName);
    }

Fiddler で見られる予期しない動作は、上記のコードを使用すると、ブラウザーでページが更新されるたびに、GET 要求が発生して 200 が返されますが、同じバンドル ID が生成されます。

さらに実証するために、Fiddler の出力に表示されているものを次に示します (最も古い要求から最も新しい要求へ)

12:01:10:
GET /blah/LessBundle?v=8wWviX6PRM-m1BrNdFSTtQQQo_2xtnt6d4aNKYp9p_Y1 HTTP/1.1 (リターン コード 200)
12:01:20:
GET /blah/LessBundle?v=8wWviX6PRM-m1BrNdFSTtQQQo_2xtnt6d4aNKYp9p_Y1 HTTP/1.1 (200 リターン コード) ************ 304 のはずです
12:02:05
GET /blah/LessBundle?v=9yWviXPRM-k1BrNdFSTtQQQo_2dddddd4aNKYp9p_B1 HTTP/1.1 (200 リターン コード) OK、新しいバンドルが返されたはずです
12:02:35
GET /blah/LessBundle?v=9yWviXPRM-k1BrNdFSTtQQQo_2dddddd4aNKYp9p_B1 HTTP/1.1 (200 リターン コード) ************ は 304 のはずです

私たちが理解しようとしているのは、バンドルが変更されていない場合にバンドルを再生成せず、リクエストごとにペイロード全体を送信するように変更する方法です。

どんな助けでも大歓迎です!

ありがとう、ドミニク

4

1 に答える 1

0

したがって、クロムで f5 ではなく ctrl-f5 を押していたことが問題であることがわかりました。これにより、通常の更新ではなくキャッシュの更新が強制されます。

f5 で更新すると、すべて問題ありません。

問題ありません、先に進んでください:)

于 2013-03-19T00:22:24.280 に答える