gpt4 book ai didi

c# - 在电子邮件中发送图表

转载 作者:太空狗 更新时间:2023-10-30 00:30:56 25 4
gpt4 key购买 nike

我想使用 ASP.Net 和 C# 在电子邮件正文中发送折线图。我写了一段代码来在 div 标签中显示图表。我想通过邮件发送折线图。如何做到这一点?

My Code: jQuery

var chartData;
google.load("visualization", "1", { packages: ["corechart"] });

function Chart() {
$.ajax({
url: "HHT_Tracking.aspx/GetData",
data: "",
dataType: "json",
type: "POST",
contentType: "application/json; chartset=utf-8",
success: function (data) {
chartData = data.d;
},
error: function () {
alert("Error loading data! Please try again.");
}
}).done(function () {
//google.setOnLoadCallback(drawChart);
drawChart();
});
};

function drawChart() {
var data = google.visualization.arrayToDataTable(chartData);

var options = {
title: "Server Monitoring Date Wise",
pointSize: 5,
vAxis: { slantedText: true, slantedTextAngle: 90, title: 'MINUTES' }
};

var lineChart = new google.visualization.LineChart(document.getElementById('chartDiv'));

lineChart.draw(data, options);
}

Source Code:

<tr>
<td>
<div id="chartDiv" style="width: 100%; height: 700px"></div>
</td>
</tr>

最佳答案

假设您正在使用 System.Web.UI.DataVisualization 制作图表,chart 类有一个方法 SaveImage,您可以用于将该图表作为图形(例如 png)保存到内存流中。使用该流吐出 data-uri,然后您可以在 HTML 格式的电子邮件正文中使用它。

例如:

Charting.Chart myChart = new Charting.Chart();
System.IO.MemoryStream imgStream = new System.IO.MemoryStream();
myChart.SaveImage(imgStream, Charting.ChartImageFormat.Png);
return "<img class='chartImage' src='data:image/png;base64, " + System.Convert.ToBase64String(imgStream.ToArray()) + "' />";

此代码将返回一个 img 标签,其中 data-uri 作为其 src,然后您可以在电子邮件的 HTML 正文中使用它。

关于c# - 在电子邮件中发送图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31800959/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com