C# 英雄卡图像附件未加载
我正在使用代码C# 英雄卡图像附件未加载,c#,botframework,attachment,C#,Botframework,Attachment,我正在使用代码 private static Attachment HeroCard() { var hc = new HeroCard { Images=new List<CardImage> { new CardImage(@"C:\Users\.....\imgs\testImage.jpg") } }; return hc.ToAttachment(); } 图像无法加载。我已经尝试了不同的其他格式 这条路没有成功。我
private static Attachment HeroCard() {
var hc = new HeroCard {
Images=new List<CardImage> {
new CardImage(@"C:\Users\.....\imgs\testImage.jpg") }
};
return hc.ToAttachment();
}
图像无法加载。我已经尝试了不同的其他格式
这条路没有成功。我错过了什么
尝试使用本地文件夹@“~\imgs\testImage.jpg”
您的图像文件似乎存储在项目imgs
文件夹中,您希望将图像发送到客户端。您可以尝试使用System.Web.HttpContext.Current.Server.MapPath
读取MapPath。以下代码适用于我,请参考
var hc = new HeroCard
{
Images = new List<CardImage> {
new CardImage(System.Web.HttpContext.Current.Server.MapPath(@"~\imgs\testImage.jpg"))
}
};
var hc=新卡
{
图像=新列表{
新的CardImage(System.Web.HttpContext.Current.Server.MapPath(@“~\imgs\testImage.jpg”))
}
};
下面是MS Bot框架上的代码工作SDK v4
var imagePath = Path.Combine(Environment.CurrentDirectory, @"Resources\testImage.png");
var imageData = Convert.ToBase64String(File.ReadAllBytes(imagePath));
var heroCard = new ThumbnailCard
{
Images = new List<CardImage> { new CardImage($"data:image/png;base64,{imageData}") },
};
var-imagePath=Path.Combine(Environment.CurrentDirectory,@“Resources\testImage.png”);
var imageData=Convert.ToBase64String(File.ReadAllBytes(imagePath));
var heroCard=新的拇指指甲卡
{
Images=newlist{newcardimage($“data:image/png;base64,{imageData}”)},
};
您可以找到更多关于使用附件的示例我不知道这一点。图像正在加载,谢谢。这解决了我的问题。我只是在使用:
Images=newlist{newcardimage(imageData)}
,想知道为什么这不起作用。
var imagePath = Path.Combine(Environment.CurrentDirectory, @"Resources\testImage.png");
var imageData = Convert.ToBase64String(File.ReadAllBytes(imagePath));
var heroCard = new ThumbnailCard
{
Images = new List<CardImage> { new CardImage($"data:image/png;base64,{imageData}") },
};