如何将Content-Length,Content-Type和Last-Modified添加到HTTP响应消息头

时间:2014-03-19 07:40:07

标签: c# .net httpresponse

如何使用.net将Content-Length,Content-Type和Last-Modified添加到HttpResponseMessage标头。

我需要在添加这些字段后手动将所有这些值附加到响应中,我需要从服务器返回响应。 我试图以这种方式添加这些字段

httpResponse.Content.Headers.Add("Content-Length", item.Size.ToString());
httpResponse.Content.Headers.Add("Content-Type", item.ContentType);

但它抛出了异常

  

“对象引用未设置为对象的实例”。

如果我这样添加

httpResponse.Headers.Add("Content-Length", item.Size.ToString());
httpResponse.Headers.Add("Content-Type", item.ContentType);

我收到了错误的错误

  

“未使用的标题名称。请确保使用请求标头   HttpRequestMessage,带有HttpResponseMessage的响应头,以及   带有HttpContent对象的内容标题。“

请任何人帮我将这些字段添加到HttpResponsesMessage中。

1 个答案:

答案 0 :(得分:5)

您首先需要初始化内容。例如:

var content = "this is some content";
var response = new HttpResponseMessage
{
    Content = new StringContent(content)
};
response.Content.Headers.Add(@"Content-Length", content.Length.ToString());