Teams消息支持三种不同的方式来添加图片,这篇文章我们来一起看一下这三种方式。
- Inline图片
var imagePath = Path.Combine(Environment.CurrentDirectory, "abc.png");
var imageData = Convert.ToBase64String(File.ReadAllBytes(imagePath));
var image = new Attachment
{
Name = @"Resources\abc.png",
ContentType = "image/png",
ContentUrl = $"data:image/png;base64,{imageData}",
};
reply = MessageFactory.Text("Hello world");
reply.Attachments = new List<Attachment>() { image };
可以看到这种方式讲图片内嵌到消息里,使用base64的方式来对图片进行编码,在url字段,把编后的base64字符串附加到“data:image/png;base64,”后面。
这种方式适合文件大小较小的图片,因为base64编码本身就会把数据扩大三分之一左右,如果一个图片有600kb,那base64之后,这条消息就起码有800kb多了。
- 上传图片到服务器
var imagePath = Path.Combine(Environment.CurrentDirectory, "abc.png");
var connector = turnContext.TurnState.Get<IConnecto