使用Discord修改WebHook消息.Net c#


using (DiscordWebhookClient client = new DiscordWebhookClient(WEBHOOK_URL))
{
ulong z = 42342340290226;
client.ModifyMessageAsync(z);//Not sure how I would edit this message. The documentation is confusing.
}

我不知道如何使用这个ModifyMessage函数。另外,我需要使用异步函数吗?我只是在不使用任何ASYNC的情况下调用它。我不确定这是否可以。发送消息可以工作,但第二个功能我不确定如何工作。

正如其他人所说,您应该等待异步调用。这样可以确保操作以可预测的方式执行。我们的意图是立即执行,并等待行动的结果。

也就是说,discord文档对这种方法的描述如下:

public Task ModifyMessageAsync(ulong messageId, Action<WebhookMessageProperties> func, RequestOptions options = null)

第二个参数描述了基于WebhookMessageProperties的委托。它可以很容易地由lambda定义,比如:

x => { }

现在请记住,x是任意的,你可以选择你喜欢的任何名称,甚至是整个单词,我只是在这个例子中保持了简短。

在手镯之间,您可以使用x.SomeProperty访问WebhookMessageProperties类中的任何属性。其中SomeProperty必须是该类的已知属性(如果有意义的话(。

例如,已知的属性之一是:

string Content { get; set; }

以下是如何使用lambda来更改Content属性:

using (DiscordWebhookClient client = new DiscordWebhookClient(WEBHOOK_URL))
{
ulong z = 42342340290226;
await client.ModifyMessageAsync(z, x => 
{
x.Content = "This is the updated message content";
});

}

如果要同时更新多个属性,只需在lambda中添加另一行即可。

相关内容

  • 没有找到相关文章

最新更新