15

「Expires」が有効な HTTP 応答ヘッダー タイプであると確信しています。しかし、コードで設定しようとすると: (これは ActionFilter.OnActionExecuted メソッドにあります)

actionExecutedContext.Response.Headers.Add("Expires", (DateTime.Now + Timespan.FromDays(7)).ToString("R"));

私は例外で終わります:

InvalidOperationException: ヘッダー名が誤って使用されています。要求ヘッダーが HttpRequestMessage で、応答ヘッダーが HttpResponseMessage で、コンテンツ ヘッダーが HttpContent オブジェクトで使用されていることを確認してください。

4

2 に答える 2

26

Expires はコンテンツ ヘッダーです。代わりにこれを試してください:

actionExecutedContext.Response.Content.Headers.Expires = DateTimeOffset.Now.AddDays(7);
于 2013-03-06T20:09:56.367 に答える
1

試す

response.Content.Headers.Expires = DateTimeOffset.Now.AddDays(7);
于 2013-03-06T20:12:22.473 に答える