2009-08-25 7 views
0

Ich habe einige RDL verwenden es in einer (Windows Forms) .net 2.0 App.Intermitant DefinitionInvalidException mit Windows-Forms ReportViewer 2008

Wenn der Benutzer in der App klickt, wird rdl erneut in die Berichtsanzeige geladen. Für die gleiche RDL bekomme ich manchmal den Fehler, manchmal nicht.

Wenn ich meine App-Debugging in Visual Studio ausführen, wird nie der Fehler angezeigt. Unmittelbar nach dem Laufen, starte ich die exe aus dem Ordner ist und jetzt bekomme ich Fehler (aber nur 50% der Zeit der Bericht aktualisiert wird)

Die Ausnahme tritt auf, wenn ich rufe ReportViewer.RefreshReport

I‘ Ich habe die RDL an jeder Stelle durchsucht, an der es einen minOccurs gibt und sie alle entweder "0" oder "1" sind.

Interessant, wenn ich Application.DoEvents() aufrufen, unmittelbar bevor ich RefreshReport aufrufen kann ich aber die Menge an Zeit der Fehler passiert bis 5% ... aber es passiert gelegentlich noch!

Die Definition des Berichts 'Hauptbericht' ist ungültig. , In der Berichtsverarbeitung ist ein unerwarteter Fehler aufgetreten. , der Wert für das Attribut 'minOccurs' ist ungültig - der Wert für das Attribut 'minOccurs' xsd werden müssen: nonNegativeInteger .. (DefinitionInvalidException) Stack Trace: Microsoft.Reporting.DefinitionInvalidException: Die Definition des Berichts ‚Haupt Bericht 'ist ungültig. ---> Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: In der Berichtsverarbeitung ist ein unerwarteter Fehler aufgetreten. ---> System.Xml.Schema.XmlSchemaException: Der Wert für das Attribut 'minOccurs' ist ungültig - Der Wert für das Attribut 'minOccurs' muss xsd: nonNegativeInteger .. bei System.Xml.Schema.XmlSchema.Read (XmlReader reader, Validationvalidation) bei System.Xml.Schema.XmlSchema.Read (Stream Strom, Validationvalidation) bei Microsoft.ReportingServices.ReportProcessing.ReportPublishing.RmlValidatingReader..ctor (XmlTextReader Textreader, PublishingErrorContext errorContext, String targetRDLNamespace) an Microsoft.ReportingServices.ReportProcessing.ReportPublishing.RmlValidatingReader.CreateReader (XmlTextReader aktualisiertRDLReader, PublishingErrorContext errorContext, Zeichenfolge targetRDLNamespace) bei Microsoft.ReportingServices.ReportProcessing.ReportPublishing.Phase1 (CatalogItemContext repor TContext, Byte [] definitions CreateReportChunk createChunkCallback, CheckSharedDataSource checkDataSourceCallback, String & Beschreibung, String & Sprache, DataSourceInfoCollection & Datasources UserLocationFlags & userReferenceLocation, Boolean & hasExternalImages, Boolean & hasHyperlinks) bei Microsoft.ReportingServices.ReportProcessing.ReportPublishing.CreateIntermediateFormat (CatalogItemContext reportContext, Byte [] Definition, CreateReportChunk createChunkCallback, CheckSharedDataSource checkDataSourceCallback, PublishingErrorContext errorContext, AppDomain compilationTempAppDomain, Boolean generateExpressionHostWithRefusedPermissions, String & Beschreibung, String & Sprache, ParameterInfoCollection & Parameter, DataSourceInfoCollection & Datasources UserLocationFlags & userReferenceLocation, Arraylist & dataSetsName, Boolean & hasExternalImages, Boolean & hasHyperlinks) bei Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CompileReport (CatalogItemContext reportContext, Byte [] Report, CreateReportChunk createChunkCallback, CheckSharedDataSource checkDataSourceCallback, PublishingErrorContext errorContext, AppDomain compilationTempAppDomain, Boolean generateExpressionHostWithRefusedPermissions, String & Report, String & reportLanguage, ParameterInfoCollection & Parameter, DataSourceInfoCollection & Datasources UserLocationFlags & userReferenceLocation, Array & dataSetsName, Boolean & hasExternalImages, Boolean & hasHyperlinks) bei Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateIntermediateFormat (CatalogItemContext reportContext, Byte [] reportDefinition, CreateReportChunk createChunkCa llback, CheckSharedDataSource checkDataSourceCallback, AppDomain compilationTempAppDomain, Boolean generateExpressionHostWithRefusedPermissions) --- Ende der Ausnahmestapelüberwachung --- bei Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateIntermediateFormat (CatalogItemContext reportContext, Byte [] Report, CreateReportChunk createChunkCallback, CheckSharedDataSource checkDataSourceCallback, AppDomain compilationTempAppDomain, Boolean generateExpressionHostWithRefusedPermissions) bei Microsoft.Reporting.ReportCompiler.CompileReport (CatalogItemContext Zusammenhang Byte [] Report, Boolean generateExpressionHostWithRefusedPermissions, ReportSnapshotBase & snapshot) --- Ende der Ausnahmestapelüberwachung --- bei Microsoft.Reporting. ReportCompiler.CompileReport (KatalogItem Context Kontext, Byte [] Report, Boolean generateExpressionHostWithRefusedPermissions, ReportSnapshotBase & Snapshot) bei Microsoft.Reporting.StandalonePreviewStore.StoredReport.CompileReport() bei Microsoft.Reporting.StandalonePreviewStore.StoredReport.get_Snapshot() bei Microsoft.Reporting.StandalonePreviewStore.GetCompiledReport (CatalogItemContext Kontext, Boolean wieder aufzubauen, ReportSnapshotBase & Snapshot) bei Microsoft.Reporting.LocalService.GetCompiledReport (CatalogItemContext itemContext, Boolean wieder aufzubauen, ReportSnapshotBase & Snapshot) bei Microsoft.Reporting.LocalService.CompileReport (CatalogItemContext itemContext, Boolean Rebuild) bei Microsoft .Reporting.WinForms.LocalReport.CompileReport()

Antwort

0

Statt

ReportViewer.RefreshReport 

dies tun schien es zu beheben.

Application.DoEvents() 
ReportViewer.LocalReport.ExecuteReportInCurrentAppDomain(Reflection.Assembly.GetExecutingAssembly().Evidence) 
Verwandte Themen