2012-08-17 15 views
0

我對請求參數值有一個奇怪的問題。 Silverlight應用程序在aspx頁面中打開。當我的queryString包含等號時會出現問題。 我檢查在Silverlight應用程序值並發現從URI值從檢索爲queryString參數值不同:HtmlPage.Document.QueryString參數值與DocumentUri.OriginalString值不同

HtmlPage.Document.DocumentUri.OriginalString:

"http://localhost:8081/SilverlightContainer.aspx?sys_ObjectId=2&sys_Param1={\"p1\":\"Narud\\u017Ebenica =\"}" 

HtmlPage.Document.QueryString [ 「sys_Param1」 ]:

"{\"p1\":\"Narud\\u017Ebenica " 

如果sys_Param1不包含等號,一切都按預期工作。

謝謝。

+0

這裏有什麼問題?看來你已經有了解決方案/解決方法。 – jv42 2012-08-20 09:39:11

+0

你在想什麼?解析DocumentUri.OriginalString?我不想這樣做。我想了解爲什麼會發生這種情況並正確解決問題。 – Filip 2012-08-20 10:18:14

+0

我認爲你必須以某種方式編碼'='。看起來QueryString是使用類似於'String.Split('=')'的東西來構造的。 – jv42 2012-08-20 12:16:57

回答

0

我解決了這個問題,通過刪除有問題的url部分並從silverlight讀取javascript變量,而不是將它傳遞給查詢字符串。 另一種方法是使用javascript encodeURIComponent,但我決定使用變量方法。

我仍然不知道是什麼原因導致此問題,因爲我的網址看起來正確。