簡體   English   中英

在Web Api Get功能中允許特殊字符

[英]Allow special characters in Web Api Get function

我正在嘗試將特殊字符傳遞給Web API中的自定義函數。 如果我不傳遞特殊字符,則該功能有效。 我要指的特殊字符是'#','&',....

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

URL編碼是必經之路。 這應該作為您甚至沒有想到的默認設置來解決,解決了很多問題。 設置WebClient的編碼

client.Encoding = Encoding.UTF8;

一種選擇是使用post方法,並將參數通過正文消息中的json對象傳遞。

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

public class QueryTestRequest
{
   public string Query {get; set;}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM