2012-04-27 53 views
1

我经历了一些奇怪的行为,为我的次要瓷砖查询字符串。 字符串如下:queryString bug

"/MainPage.xaml?link=" + "touch.facebook.com/home.php?refsrc=http://touch.facebook.com/home.php" 

即使第二部分Uri.EscapeUriString()'编与否,该应用不通过次级瓦片开始在所有。它在加载任何内容之前立即崩溃。

有什么我不得不考虑关于queryStrings?

感谢

回答

1

第二?需求是一个&

编辑: URI的具有特定形式page ? argument = value & argument = value & ...

解析您的URI您尝试使用它之前:

string uri = "/MainPage.xaml?link=" + "touch.facebook.com/home.php?refsrc=http://touch.facebook.com/home.php"; 

string[] array = uri.Split('?'); 
if (array.Length > 2) 
    uri = array[0] + "?" + string.Join("&", array.Skip(1).ToArray()); 
+0

uri由Facebook提供,只是复制,我应该如何捕获这些例外如果这真的是问题? – roqstr 2012-04-27 20:50:21

+0

请参阅编辑。添加一些代码来解析uri,然后再尝试使用它。 (如果双'''真的是你的问题) – 2012-04-27 21:05:09

+0

system.Net.httputility.UrlEncode&decode解决了它,但我认为它背后的想法是一样的你的。非常感谢! – roqstr 2012-04-27 21:18:38