Разрешить специальные символы в функции Web Api Get - PullRequest
0 голосов
/ 08 января 2019

Я пытаюсь передать специальные символы пользовательской функции в веб-API. Функция работает, если я не передаю специальные символы. Специальные символы, на которые я ссылаюсь, это «#», «&», ....

[HttpGet]
[EnableQuery(MaxExpansionDepth = 5)]
public IQueryable<Test> QueryTest(string Query)
{
    var dbTest = db.Test.AsQueryable();
    return dbTest;
}

Ответы [ 2 ]

0 голосов
/ 08 января 2019

Можно использовать метод post и передать свой параметр через объект json в сообщении тела.

[HttpPost]
public IQueryable<Test> QueryTest(QueryTestRequest request)
{
    var dbTest = db.Test.AsQueryable();
    return dbTest;
}

public class QueryTestRequest
{
   public string Query {get; set;}
}
0 голосов
/ 08 января 2019

Кодировка URL - путь. Это должно быть сделано по умолчанию, о котором вы даже не думаете, решает так много проблем. Установите кодировку веб-клиента

client.Encoding = Encoding.UTF8;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...