C# 操作Messageback卡未呈现
我正在尝试发布Messageback自适应卡,但在emulator中出现以下错误: 无法呈现该卡。它的格式不正确或使用了此主机不支持的功能 我使用的是AdaptiveCards 1.2.2版本。我正在使用C#发布这张自适应卡,但我无法找出问题所在 我的Json文件:C# 操作Messageback卡未呈现,c#,json,botframework,microsoft-teams,adaptive-cards,C#,Json,Botframework,Microsoft Teams,Adaptive Cards,我正在尝试发布Messageback自适应卡,但在emulator中出现以下错误: 无法呈现该卡。它的格式不正确或使用了此主机不支持的功能 我使用的是AdaptiveCards 1.2.2版本。我正在使用C#发布这张自适应卡,但我无法找出问题所在 我的Json文件: { "type": "AdaptiveCard", "selectAction": { "type": "Action.Submit" }, "body": [ { "type": "T
{
"type": "AdaptiveCard",
"selectAction": {
"type": "Action.Submit"
},
"body": [
{
"type": "TextBlock",
"text": "1:1 with John Doe",
"weight": "Bolder"
},
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"items": [
{
"type": "Image",
"url": "https://images.idgesg.net/images/article/2019/04/google-calendar-android-100794956-large.jpg",
"altText": "Calendar",
"size": "small"
}
],
"width": "auto"
},
{
"type": "Column",
"items": [
{
"type": "TextBlock",
"text": "Tomorrow, 30 May"
}
],
"width": "stretch"
}
]
},
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"items": [
{
"type": "Image",
"url": "https://pbs.twimg.com/profile_images/3647943215/d7f12830b3c17a5a9e4afcc370e3a37e_400x400.jpeg",
"altText": "Calendar",
"height": "20px"
}
],
"width": "auto"
},
{
"type": "Column",
"items": [
{
"type": "TextBlock",
"text": "John Doe",
"spacing": "Medium"
}
],
"width": "stretch"
}
]
},
{
"type": "TextBlock",
"text": "Slots available - **1 hr duration**",
"separator": true,
"spacing": "Medium",
"isSubtle": true
},
{
"type": "ColumnSet",
"columns": [
{
"type": "Column",
"items": [
{
"actions": [
{
"type": "Action.Submit",
"title": "11:00 AM",
"data": {
"msteams": {
"type": "messageBack",
"displayText": "11:00 AM",
"text": "text to bots",
"value": "{\"bfKey\": \"bfVal\", \"conflictKey\": \"from value\"}"
}
}
}
]
}
],
"width": "auto"
},
{
"actions": [
{
"type": "Action.Submit",
"title": "Cancel",
"data": {
"msteams": {
"type": "messageBack",
"displayText": "Cancel",
"text": "text to bots",
"value": "{\"bfKey\": \"bfVal\", \"conflictKey\": \"from value\"}"
}
}
},
{
"type": "Action.Submit",
"title": "Confirm",
"data": {
"msteams": {
"type": "messageBack",
"displayText": "Confirm",
"text": "text to bots",
"value": "{\"bfKey\": \"bfVal\", \"conflictKey\": \"from value\"}"
}
}
}
]
}
],
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.0"
}
测试自适应卡的一个好方法是在Microsoft团队的App Studio中使用或卡编辑器。如果未呈现预览,则说明您的卡有问题 在您的例子中,您说您想使用AdaptiveCards 1.2.2,但您在JSON中包含了
“version”:“1.0”
。您可能想说“版本”:“1.2”,但请记住,自适应卡的版本越高,能够渲染它的客户端就越少
更重要的是,您在列和列集中都放置了actions
属性,而这两个属性都没有actions
属性。请参阅以查看哪些元素具有哪些属性。您可能想使用操作集(1.2功能),或者您可能只想在卡体外部使用卡本身的操作
属性
更重要的是,开始方括号比结束方括号多,因此JSON无效。我怀疑您忘记关闭上一个列集及其列
数组。请使用类似Visual Studio代码的编辑器自动格式化JSON并确保其有效。在堆栈溢出问题中正确格式化JSON也是一种很好的礼节,这样其他人就可以在不为您格式化的情况下阅读JSON
有关自适应卡以及在Microsoft Bot Framework中使用自适应卡的详细信息,请阅读。测试自适应卡的一个好方法是在Microsoft团队中使用App Studio中的或卡编辑器。如果未呈现预览,则说明您的卡有问题 在您的例子中,您说您想使用AdaptiveCards 1.2.2,但您在JSON中包含了
“version”:“1.0”
。您可能想说“版本”:“1.2”,但请记住,自适应卡的版本越高,能够渲染它的客户端就越少
更重要的是,您在列和列集中都放置了actions
属性,而这两个属性都没有actions
属性。请参阅以查看哪些元素具有哪些属性。您可能想使用操作集(1.2功能),或者您可能只想在卡体外部使用卡本身的操作
属性
更重要的是,开始方括号比结束方括号多,因此JSON无效。我怀疑您忘记关闭上一个列集及其列
数组。请使用类似Visual Studio代码的编辑器自动格式化JSON并确保其有效。在堆栈溢出问题中正确格式化JSON也是一种很好的礼节,这样其他人就可以在不为您格式化的情况下阅读JSON
有关自适应卡以及在Microsoft Bot Framework中使用自适应卡的更多信息,请阅读。是否有一种方法可以在操作中设置列,以便在两个不同的列中设置“提交”和“取消”等操作?@Anu-您不能在操作中设置列,这可能毫无意义。如我在回答中所述,如果您使用的客户机支持Adaptive Cards 1.2,那么您可以使用操作集,并将其放入列中。请记住向上投票并接受此答案,因为它回答了您提出的问题。是否有一种方法可以在操作中设置列,以便在两个不同的列中设置“提交”和“取消”等操作?@Anu-您不能在操作中设置列,这毫无意义。如我在回答中所述,如果您使用的客户机支持Adaptive Cards 1.2,那么您可以使用操作集,并将其放入列中。请记住投票并接受这个答案,因为它回答了你提出的问题。