2017-08-08 70 views
-1

剛調用Web API 2端點來顯示基於流派的書籍的詳細信息時遇到此問題。當流派是「Computing,Internet & Digital Media」時,ASP.Net Web API 2框架無法將該值綁定到路由參數。我們已經對字符串進行了編碼,即「計算,互聯網&數字媒體」,即使它沒有綁定價值。請參閱下面的簡短屏幕。將參數值傳遞給具有特殊字符的Web API端點

enter image description here

我們怎樣才能使框架結合流派與價值「」計算,互聯網&數字媒體」

+0

即使在編碼之後,您將其轉換爲字符串,將字符'&'視爲'&'而不是'038' 傳遞時,您需要傳遞爲038. – HEGDE

+0

您的意思是參數即流派將具有計算,互聯網和數字媒體的權利,這是我們想要的,但在這裏流沒有達到方法本身。它在綁定過程本身期間失敗 – sameer

+0

但是,建議不要在以下建議的web.config中添加設置。 – sameer

回答

1

的問題是,你的鏈接中包含‘&’,這是不是同時通過編碼。 它把「&」作爲URL參數說明符 要麼你可以將它轉換爲ASCII碼,或指定配置文件,這些特殊字符爲波紋管:

<system.web> 
<httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" /> 
<pages validateRequest="false" /> 
</system.web> 
+0

其實,我們編碼所有的特殊字符。如果您在發送請求時看到上面的屏幕截圖,我們將傳遞編碼的流派。 – sameer