你好evryone(即时通讯使用MVC5), 我从Html Helper Extension中的Chart生成图像
public static string GetUrlFromChart(this HtmlHelper helper, Chart chart)
{
lock (obj)
{
string path = HttpContext.Current.Server.MapPath("~/App_Data/graphs/");
string filename = path + Guid.NewGuid() + ".jpg";
chart.ToWebImage("jpg").Save(filename);
return filename;
}
}
通过viewmodel我发送数据到视图,我试图向用户显示它们。
<img src="@Html.GetUrlFromChart(@Model.my_chart)" width="400" height="250"/>
图像生成正确,路径正确,但应用程序无法显示, 它唯一的白色矩形
当我将图像源复制到Windows资源管理器时。
我得到那张照片。
但似乎无法使用
<img></img>
任何人都知道如何显示System.Web.Helpers.Chart之类的图像,或者显示数据如图表?
答案 0 :(得分:0)
你好伙计你应该返回图像而不是文件路径 我不知道这个Chart对象所以我只是将代码更改为通用的
将您的代码更改为:
public static ActionResult GetUrlFromChart()
{
lock (obj)
{
string path = HttpContext.Current.Server.MapPath("~/App_Data/graphs/");
string filename = path + Guid.NewGuid() + ".jpg";
var image = chart.ToWebImage("jpg");
//save your image.
return File(image.GetBytes(), "image/jpeg");
}
}
在视图中:
<img src="@Url.Action("GetUrlFromChart", "Yourcontrollername")"/>