static async void SendTweetWithSinglePicture(string message, string image)
{
var auth = new SingleUserAuthorizer
{
CredentialStore = new SingleUserInMemoryCredentialStore
{
ConsumerKey = "",
ConsumerSecret = "",
AccessToken = "",
AccessTokenSecret = ""
}
};
var context = new TwitterContext(auth);
var uploadedMedia = await context.UploadMediaAsync(File.ReadAllBytes(@image));
var mediaIds = new List<ulong> { uploadedMedia.MediaID };
await context.TweetAsync(
message,
mediaIds
);
}
protected void Page_Load(object sender, EventArgs e)
{
SendTweetWithSinglePicture("test", "path");
}
Как я могу вызвать async
метод на Page_Load
?Вызов Асинхронный метод в Page_Load
Если вы измените метод 'статическими асинхронной Task' вместо пустоты, вы можете вызвать его с помощью' SendTweetWithSinglePicture ("тест", "путь") Подождите() '. Избегайте 'async void', если вы не используете его для событий. –
Кстати, постарайтесь не публиковать свой вопрос с помощью ключей/секретов API. Любой, кто имеет такую информацию, может захватить учетную запись API. –
@RonBeyer, блокирующий синхронно в приложении ASP, просит умолку. Никогда не вызывайте Task.Wait(), если вы вообще можете его избежать. В этом случае можно просто выполнить асинхронную запись Page_Load или зарегистрировать задачу async, используя встроенные типы ASP. – kai