【问题标题】:System.OutOfMemoryException while processing in PDF from reportviewercontrol从 reportviewercontrol 处理 PDF 时出现 System.OutOfMemoryException
【发布时间】:2020-08-14 02:40:08
【问题描述】:

创建报表查看器时出现以下异常,我使用存储过程从 SQL 数据库中获取信息,当它尝试处理报表时发生以下情况:

消息:本地报告处理过程中发生错误..

InnerException: System.ArgumentException: 参数无效。

在 System.Drawing.Bitmap..ctor(Int32 宽度,Int32 高度,PixelFormat 格式)在 System.Drawing.Bitmap..ctor(图像原始,Int32 宽度,Int32 高度)在 System.Drawing.Bitmap..ctor (图像原件)在 Microsoft.ReportingServices.Rendering.ImageRenderer.PDFWriter.ProcessImage(PDFImage image) 在 Microsoft.ReportingServices.Rendering.ImageRenderer 的 Microsoft.ReportingServices.Rendering.ImageRenderer.PDFWriter.Process32bppArgbImage(StringBuilder sb, StringBuilder imageContent, PDFImage image) Microsoft.ReportingServices.Rendering.ImageRenderer.PDFRenderer.Render(报告报告,NameValueCollection)的 Microsoft.ReportingServices.Rendering.ImageRenderer.Renderer.ProcessPage(RPLReport rplReport,Int32 pageNumber,FontCache sharedFontCache,List`1 glyphCache)的 .PDFWriter.EndPage() deviceInfo, Hashtable renderProperties, CreateAndRegisterStream createAndRegisterStream) at Microsoft.ReportingServices.Rendering.ImageRenderer.RendererBase.Render(Report report, NameValueCollection reportServe rParameters、NameValueCollection deviceInfo、NameValueCollection clientCapabilities、Hashtable& renderProperties、CreateAndRegisterStream createAndRegisterStream)。 StackTrace:在 Microsoft.Reporting.WebForms.LocalReport.InternalRender(字符串格式,布尔值 allowInternalRenderers,字符串 deviceInfo,PageCountMode pageCountMode,CreateAndRegisterStream createStreamCallback,警告 []& 警告)处 Microsoft.Reporting.WebForms.LocalReport.InternalRender(字符串格式,布尔值 allowInternalRenderers , String deviceInfo, PageCountMode pageCountMode, String& mimeType, String& encoding, String& fileNameExtension, String[]& streams, Warning[]& warnings) at Microsoft.Reporting.WebForms.LocalReport.Render(String format, String deviceInfo, PageCountMode pageCountMode, String& mimeType , String& encoding, String& fileNameExtension, String[]& streams, Warning[]& warnings) at AppSingless472.App_Tools.PdfCreatorBase.GetArryBytesPdfConFoto(Int32 IdGuiaSoporte) at AppSingless472.WebApiController.SoporteController.SoporteEntregaConFoto(FormData formData, HttpRequestMessage request)。 TargetSite: Void InternalRender(System.String, Boolean, System.String, Microsoft.Reporting.WebForms.PageCountMode, Microsoft.ReportingServices.Interfaces.CreateAndRegisterStream, Microsoft.Reporting.WebForms.Warning[] ByRef)。

在生产中偶尔会发生以下错误(我从 Azure 收到此错误)

System.OutOfMemoryException 消息 TaskScheduler 引发了异常。引发了“System.OutOfMemoryException”类型的异常。
异常类型 System.OutOfMemoryException 方法失败 MultipartDataMediaFormatter.Converters.HttpContentToFormDataConverter+d__0.MoveNext

这个错误我已经好几天了,我无法解决它

感谢您的关注。

【问题讨论】:

标签: c# sql .net azure reporting


【解决方案1】:

在没有任何代码的情况下很难调试您的应用程序。但是“内存不足”异常通常是变量太大而无法存储在您的内存中

从您的错误代码看来,您尝试处理的图像太大,您的程序无法处理。尝试缩小导致错误的图像

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-27
    • 1970-01-01
    • 1970-01-01
    • 2014-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多