我嘗試將png保存到內存流時出錯。在我的ASP.NET開發服務器上一切正常,但是當我在IIS7下運行網站時 - 會產生一個錯誤。另外當我嘗試保存JPG格式 - 一切都是正確的。在IIS中,我已將.NET可信級別設置爲「完全」。但它仍然沒有工作。我需要你的幫助。當我在IIS7中將png保存到MemoryStream時發生了一般性錯誤
private static Stream DrawBarChart(IEnumerable<Tuple<string, ulong, double>> data){
using (MemoryStream stream = new MemoryStream())
{
var canvasWidth = PageSize.A4.Width;
var canvasHeight = PageSize.A4.Height;
using (
System.Drawing.Image bitmap = new Bitmap((int) canvasWidth,
(int) canvasHeight))
{
using (var graphics = Graphics.FromImage(bitmap))
{
var penBlack1 = new Pen(Brushes.Black, 1);
graphics.DrawLine(penBlack1, 0, 0, canvasWidth, 0);
graphics.DrawLine(penBlack1, 0, 0, 0, canvasHeight);
graphics.Save();
}
bitmap.Save(stream, ImageFormat.Png);
stream.Flush();
stream.Position = 0;
return stream;
}
}
}
難道有事情做與GDI +(該顯卡僅僅是封裝)不支持服務? [源代碼](http://msdn.microsoft.com/en-us/library/ms533798%28VS.85%29.aspx):_「GDI +函數和類不支持在Windows服務中使用。嘗試使用Windows服務中的這些函數和類可能會產生意想不到的問題,例如服務性能下降和運行時異常或錯誤。「_ – CodeCaster
可以使用什麼替代方法來生成圖片? – Alexander
Graphics.Save不是你所想的那樣。去谷歌上查詢。 – usr