我最近made a post here(现在标记为“已回答” - 它是关于将Google Calc json字符串解析为WP7 http://www.google.com/ig/calculator?hl=en&q=100GBP=?SEK。
它运作良好 - 除非Google返回999以上的数字。高于999的数字写入 1 000 ,而不是 1000 。似乎“空间”使应用程序崩溃/尝试捕获意识到存在错误。
我只是想知道如何制作json序列化器(使用System.Runtime.Serialization.Json;)(使用StringBuilder)返回999以上的总和/金额,而不会崩溃?
谢谢:)
CODE:
您好!我主要使用此处的代码:Parse Google Calculator with Json in Windows Phone 7 / C#?
为了从列表框中获取货币土地代码,我使用:
ListBoxItem toExchangeSelected= toCurrencyList.ItemContainerGenerator.ContainerFromItem(this.toCurrencyListtaListe.SelectedItem) as ListBoxItem;
string toCurrency = toCurrencyList.Content.ToString();
ListBoxItem fromExchangeSelected= fromCurrencyList.ItemContainerGenerator.ContainerFromItem(this.fromCurrencyList.SelectedItem) as ListBoxItem;
string fromCurrency = fromExchangeSelected.Content.ToString();
答案 0 :(得分:1)
某些欧洲文化对大数字使用空格而不是逗号,因此在解析字符串之前请尝试使用相应的CultureInfo:
CultureInfo ci = new CultureInfo("fr-FR");
double d = double.Parse("1 000", ci); // returns 1000.0
答案 1 :(得分:0)
尝试使用newtonsoft json序列化程序。 http://json.codeplex.com/ 他们有一个wp7的二进制文件,并且比datacontractserializer(在我看来)更好
我刚刚注意到你在StackOverflow上提到的问题的第二个答案与我正在讨论的问题相同。
使用JsonConvert.Deserialize<T>(string json)
并将T作为结果(ExchangeRate?)