HttpResponseMessage ReasonPhrase最大长度?

时间:2014-09-17 12:18:35

标签: asp.net-mvc asp.net-web-api

我有这段代码:

public void Put(int id, DistributionRuleModelListItem model)
{
    CommonResultModel pre = new BLL.DistributionRules().Save(id, model, true);
    if(!pre.success){
        DAL.DBManager.DestroyContext();
        var resp = new HttpResponseMessage(HttpStatusCode.InternalServerError)
        {
            Content = new StringContent(string.Format("Internal server error for distruleId: {0}", id)),
            ReasonPhrase = pre.message.Replace(Environment.NewLine, " ")//.Substring(0,400)
        };
        throw new HttpResponseException(resp);
    }
}

有一些逻辑可以将pre.message的值设置为exception.ToString(),如果它太长,我会收到以下应用程序异常:

  

指定的参数超出了有效值的范围。参数   name:value

但如果我取消注释.Substring(0,400)一切正常,在客户端我收到正确的答案,可以向用户显示。

ReasonPhrase的最大长度是多少?我找不到任何指定此值的文档。

1 个答案:

答案 0 :(得分:4)

我无法在任何地方找到记录的最大值,但通过反复试验,我发现它的最大长度为512字节。