Как объединить Microcharts и Json в Xamarin?
MainPage.xaml
<StackLayout>
<forms:ChartView x:Name="Chart4"
HeightRequest="150"/>
</StackLayout>
RateInfo.cs
public class Confirmed
{
public int value { get; set; }
public string detail { get; set; }
}
RateViewModel.cs
public class RateViewModel : INotifyPropertyChanged
{
private int value_c;
/// ///////////////////confirmed///////////////////////////////
public int Value_c
{
get { return value_c; }
private set
{
this.value_c = value;
OnPropertyChanged("Value_c");
}
}
/// ///////////////////LoadDataCommand///////////////////////////////
public ICommand LoadDataCommand { protected set; get; }
public RateViewModel()
{
this.LoadDataCommand = new Command(LoadData);
LoadData();
}
public async void LoadData()
{
string url = "";
try
{
HttpClient client = new HttpClient();
client.BaseAddress = new Uri(url);
var response = await client.GetAsync(client.BaseAddress);
response.EnsureSuccessStatusCode(); // выброс исключения, если произошла ошибка
// десериализация ответа в формате json
var content = await response.Content.ReadAsStringAsync();
JObject o = JObject.Parse(content);
var str = o.SelectToken(@"$.confirmed");
var rateConfirmed = JsonConvert.DeserializeObject<Confirmed>(str.ToString());
this.Value_c = rateConfirmed.value;
}
catch (Exception)
{ }
}
public event PropertyChangedEventHandler PropertyChanged;
public void OnPropertyChanged(string prop = "")
{
if (PropertyChanged != null)
PropertyChanged(this, new PropertyChangedEventArgs(prop));
}
}
}