HttpResponseMessage как установить свойство сообщения - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть asp. net веб-API. У меня есть атрибут фильтра и OnAuthorization. Я возвращаю HttpResponseMessage следующим образом.

public override void OnAuthorization(System.Web.Http.Controllers.HttpActionContext actionContext)
{
    //Check Request Start-End Period
    if (!CheckRequestTime())
    {
        var response = new HttpResponseMessage
        {
            StatusCode = (HttpStatusCode) 429,
            ReasonPhrase = "Invalid Request Time",
            Content = new StringContent("Requests are permitted between " +
                                        WebConfigurationManager.AppSettings["TimeStart"].ToString() +
                                        " AM and " + WebConfigurationManager.AppSettings["TimeEnd"].ToString() +
                                        " PM.")


        };

        actionContext.Response = response;
    }
}

Клиент хочет, чтобы я возвратил ResponseMessageResult, что означает добавление свойства Message в ответ следующим образом:

{
    "Message": "Requests are permitted between 11:00 AM and 22:30 PM."
}

ОБНОВЛЕНИЕ Это решило мою проблему.

Content = new StringContent("{\"Message\":\"Requests are permitted between " +
                                                WebConfigurationManager.AppSettings["TimeStart"].ToString() +
                                                " AM and " + WebConfigurationManager.AppSettings["TimeEnd"].ToString() +
                                                " PM.\"}", System.Text.Encoding.UTF8, "application/json"),
...