Microsoft Bot 框架和附件

Microsoft Bot Framework and attachments

我有一个运行完美的机器人,但是当我尝试包含附件时出现内部服务器错误,我做错了什么?我使用 Microsoft Bot Framework 示例。

Attachment attachment = new Attachment();
attachment.ContentType = "image/png";
attachment.ContentUrl = "http://www.southsystem.net/ss3blue3d.jpg";
Activity reply = activity.CreateReply("test");
reply.Attachments.Add(attachment); // need to comment to work
await connector.Conversations.ReplyToActivityAsync(reply);

如果我评论 Attachments.Add 一切都很好并且没有给我任何错误。我已经处理了好几天并尝试了一切。非常感谢任何帮助。

您需要在添加附件之前初始化 Attachments 列表。

reply.Attachments = new List<Attachment>();
reply.Attachments.Add(attachment);

根据之前的回答:

如果你想在没有附件列表的情况下回复你必须创建这样的东西:

var msg = context.MakeMessage();
msg.Text = "some text for your attachment";
msg.Attachments.Add(att);
await context.PostAsync(msg);

您必须在回复消息中加入一些文字。否则,它不会给出错误但不会显示消息。 我以这种方式测试它并且它有效。 希望这会对你有所帮助:)