Я новичок в MVVM и написал небольшое приложение для тестирования воды и ознакомления с рисунком. Основная функция моего приложения занимает слишком много времени, чтобы не иметь каких-либо отзывов пользователей, что процесс продолжается. Каким будет рекомендуемый способ разместить вызов в отдельном потоке и предоставить обратную связь для индикатора выполнения? Код функции ViewModel для этой функции приведен ниже. Спасибо за помощь.Multi-Threading/User Feedback в MVVM
public DataView Data
{
get
{
return resultsView;
}
set
{
if (value == resultsView)
{
return;
}
resultsView = value;
RaisePropertyChanged("Data");
}
}
private void SetData()
{
Data = RetrieveData.GetPartData(SelectedTeam, SelectedYear).DefaultView;
}
public RelayCommand GetData
{
get;
private set;
}
/// <summary>
/// Initializes a new instance of the MainViewModel class.
/// </summary>
public MainViewModel()
{
// Initializers for other part of ViewModel
// Teams = RetrieveData.GetTeams();
// Years = RetrieveData.GetYears();
GetData = new RelayCommand(SetData);
}
То есть в значительной степени то, что я закончил делать. Я не понимаю, почему это противоречит MVVM, но я все еще открыт для мнений. – PlTaylor