IHttpActionResult返回带括号和转义斜杠的结果,为什么会发生这种情况

时间:2015-11-03 21:54:12

标签: c# asp.net-web-api asp.net-web-api2

虽然我可以使用C#代替 [\和]我不知道为什么它们会出现。

我在C#应用程序中调用Web API服务

using (var client = new HttpClient())
{
    client.BaseAddress = new Uri("http://localhost:11974/");  
    client.DefaultRequestHeaders.Accept.Clear();

    HttpResponseMessage response = await client.GetAsync("/GetNTIDWithEmail/"+ responseModel.ReferredToNTID + "/");

    if (response.IsSuccessStatusCode)
    {
        var x = await response.Content.ReadAsStringAsync();
    }

}

x =" [\" SPRUCEK \"]"

为什么它有括号和反斜杠?

我打电话的网络Api看起来像这样

[Route("GetNTIDWithEmail/{id}")]
public IHttpActionResult GetNtidfromEmail(string id)
{
    var query = (from c in _db.rEmails
                    where c.Email.Contains(id)
                select c.ALIAS_NAME);


    return Ok(query);
}

1 个答案:

答案 0 :(得分:1)

我猜你在调试器中看着它。调试器正在转义引号,因此字符串看起来像:

require

这是有道理的。您将返回["SPRUCEK"] ,其中JSON将是一个数组。你得到一个结果,所以JSON看起来你要返回的是什么。

从你的方法名称判断,我打赌你只需要一个结果。如果是这种情况,请尝试:

IEnumerable<string>