我有Windows手机页面,使用异步从网址获取数据。在我的页面类consructor中,我无法调用异步方法。如何在构造函数中从web url repsonse初始化属性。
public MyProfile()
{
InitializeComponent();
_populateFields();
}
private async void _populateFields()
{
try
{
var taskObj = await UserProfile.getUserProfile().getUserProfileFromServer();
//PoolCircle.UserProfile.ProfileResponseJson userObj = taskObj;
setDataContext(taskObj);
}
catch (Exception ex) { Debug.WriteLine(ex.Message); }
}
如何修复此依赖项?我不确定工厂方法如何修复它。我不是为页面类创建对象..
答案 0 :(得分:-1)
从OnNavigatedTo方法尝试。覆盖它。它是一种可以在页面出现之前放置所有逻辑的方法
protected async override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
base.OnNavigatedTo(e);
_populateFields();
}
希望有所帮助!问候!
答案 1 :(得分:-1)
制作PostData();
之类的方法,并在InitializeComponent();
private async void PostData()
{
try
{
var taskObj = await UserProfile.getUserProfile().getUserProfileFromServer();
//PoolCircle.UserProfile.ProfileResponseJson userObj = taskObj;
setDataContext(taskObj);
}
catch (Exception ex) { Debug.WriteLine(ex.Message); }
}