代码优先.这就是我想要做的.我很接近,但我想我只需要修改我在UpdateButton方法中定义参数的方式.
private async void UpdateButton(Action<bool> post)
{
if (!await post())
ErrorBox.Text = "Error posting message.";
}
private void PostToTwitter()
{
UpdateButton(async () => await new TwitterAction().Post("Hello, world!"));
}
private void PostToFacebook()
{
UpdateButton(async () => await new FacebookAction().Post("Hello, world!"));
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,这!await post()不起作用,因为"Type'void'不是等待的." 所以问题是,如何在此方法中定义我的参数以支持等待参数?
这是TwitterAction().Post()的定义方式......
public virtual async Task<bool> Post(string messageId){...}