Это не только у тебя ошибка такая и у меня была и у других. Цитирую из habrahabr: "В англоязычных странах в качестве разделителя используется точка, а в остальных странах, преимущественно, запятая." Поэтому я знаю два способа решения этой проблемы, может есть еще какие, особо не разбирался. 1 способ и простой это заменить точку на запятую, то есть usdrub.Replace('.',','); 2 способ это написать CultureInfo culture = CultureInfo.CreateSpecificCulture("en-EN"); и уже писать вот так return double.Parse(usdrub, culture); Есть третий способ, это изменить язык Visual Studio
Ну или чтобы не писать много кода из второго способа, можно напрямую написать так return double.Parse(usdrub, CultureInfo.CreateSpecificCulture("en-EN"));
Научился: Поработал с подстроками, и UndexOf(); Трудности: Ууух! Долго думал почему не хочет число парситься. В результате заменил точку на запятую :) не понимаю, почему double.Parse() не любит эту точку?
Научился: Зарегистрировался на currencylayer.com. Познакомился с классом WebClient и научился с помощью URL-запроса получать с сайта необходимые данные "паскалевским" способом.