You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Telegram API返回的PhotoSize类型转为字节存入SQL数据库

实现PhotoSize转bytes并存入SQL数据表的方案

你获取的update.Message.Photo是PhotoSize类型的数组,包含同一照片的不同分辨率版本,你可以按需选择对应分辨率的实例后下载转成字节数组。

具体操作步骤

  • 第一步:选择需要存储的照片分辨率版本,通常优先选择最高清的版本:
// 从PhotoSize数组中选取文件体积最大的高清版本
var targetPhoto = update.Message.Photo.OrderByDescending(p => p.FileSize).First();
  • 第二步:调用Telegram Bot客户端的下载方法,将文件转为bytes数组:
// 假设你已经初始化了ITelegramBotClient类型的bot客户端实例
using var memoryStream = new MemoryStream();
await botClient.GetInfoAndDownloadFileAsync(targetPhoto.FileId, memoryStream);
byte[] photoBytes = memoryStream.ToArray();
  • 第三步:将bytes数组写入SQL数据表

注意:对应的SQL表存储字段需要设置为varbinary(max)类型,直接将上述photoBytes作为参数写入对应字段即可。

可选优化点

  • 如果不需要存储高清原图,可以选取更小分辨率的PhotoSize实例,降低数据库存储占用
  • 可以在转成bytes后按需做图片压缩处理,再存入数据库

内容的提问来源于stack exchange,提问作者ali aghakhani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 23:24:04