请求实体太大:如何使用 Microsoft Bot Framework on Teams 修复此错误
Request Entity Too Large: How to Fix this Error with Microsoft Bot Framework on Teams
我正在尝试使用机器人框架在 Teams 上以表格格式显示数据。
首先,我在之后使用了自适应卡。它工作正常但是当项目变得如此多时不支持滚动条(垂直和水平)。
后来我写了一个HTML table作为字符串传给了activity文本。这非常有效,但不适用于大型数据集。我收到错误:请求实体太大。
请问我该如何解决?
public static string ConvertToHTMLString(DataTable dt)
{
StringBuilder sb = new StringBuilder();
sb.Append("<table style='border-collapse: collapse;font-family: Arial, Helvetica, sans-serif; width: 100%;'>");
sb.Append("<tr>");
foreach (DataColumn column in dt.Columns)
{
sb.Append("<th style='border: 1px solid #ddd; padding: 8px;padding-top: 12px;padding-bottom: 12px;text-align: left;background-color: #4CAF50;color: white;'>" + column.ColumnName + "</th>");
}
sb.Append("</tr>");
foreach (DataRow row in dt.Rows)
{
sb.Append("<tr>");
foreach (DataColumn column in dt.Columns)
{
sb.Append("<td style='border: 1px solid #ddd; padding: 8px;'>" + row[column.ColumnName].ToString() + "</td>");
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
protected override async Task OnMessageActivityAsync(ITurnContext<IMessageActivity> turnContext, ancellationToken cancellationToken)
{
var activity = Activity.CreateMessageActivity();
activity.TextFormat = "XML";
activity.Text = ConvertToHTMLString();
await turnContext.SendActivityAsync(activity, cancellationToken);
}
机器人框架/MS Teams 中存在最大消息大小。
您的消息(卡片等)单条消息不能大于 25kb。
这就是您收到此错误的原因。你的信息太大了。
唯一可用的修复方法是减小大小、删除不需要的内容或将其拆分为多条消息。
我正在尝试使用机器人框架在 Teams 上以表格格式显示数据。
首先,我在
后来我写了一个HTML table作为字符串传给了activity文本。这非常有效,但不适用于大型数据集。我收到错误:请求实体太大。
请问我该如何解决?
public static string ConvertToHTMLString(DataTable dt)
{
StringBuilder sb = new StringBuilder();
sb.Append("<table style='border-collapse: collapse;font-family: Arial, Helvetica, sans-serif; width: 100%;'>");
sb.Append("<tr>");
foreach (DataColumn column in dt.Columns)
{
sb.Append("<th style='border: 1px solid #ddd; padding: 8px;padding-top: 12px;padding-bottom: 12px;text-align: left;background-color: #4CAF50;color: white;'>" + column.ColumnName + "</th>");
}
sb.Append("</tr>");
foreach (DataRow row in dt.Rows)
{
sb.Append("<tr>");
foreach (DataColumn column in dt.Columns)
{
sb.Append("<td style='border: 1px solid #ddd; padding: 8px;'>" + row[column.ColumnName].ToString() + "</td>");
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
protected override async Task OnMessageActivityAsync(ITurnContext<IMessageActivity> turnContext, ancellationToken cancellationToken)
{
var activity = Activity.CreateMessageActivity();
activity.TextFormat = "XML";
activity.Text = ConvertToHTMLString();
await turnContext.SendActivityAsync(activity, cancellationToken);
}
机器人框架/MS Teams 中存在最大消息大小。
您的消息(卡片等)单条消息不能大于 25kb。 这就是您收到此错误的原因。你的信息太大了。
唯一可用的修复方法是减小大小、删除不需要的内容或将其拆分为多条消息。