internal override Stream Upgrade(Stream definitionStream)
        {
            Stream stream = RDLUpgrader.UpgradeToCurrent(definitionStream, m_throwUpgradeException, m_renameInvalidDataSources);

            if (definitionStream != stream)
            {
                definitionStream.Close();
                definitionStream = null;
                if (Global.Tracer.TraceVerbose)
                {
                    try
                    {
                        StreamReader streamReader = new StreamReader(stream);
                        Global.Tracer.Trace(TraceLevel.Verbose, "Upgraded Report Definition\r\n");
                        Global.Tracer.Trace(TraceLevel.Verbose, streamReader.ReadToEnd());
                        Global.Tracer.Trace(TraceLevel.Verbose, "\r\n");
                        stream.Seek(0L, SeekOrigin.Begin);
                        return(stream);
                    }
                    catch (Exception e)
                    {
                        if (AsynchronousExceptionDetection.IsStoppingException(e))
                        {
                            throw;
                        }
                        return(stream);
                    }
                }
            }
            return(stream);
        }
Пример #2
0
        private void ValidationEventHandler(object sender, ValidationEventArgs e)
        {
            XmlReader xmlReader = sender as XmlReader;

            if (xmlReader != null)
            {
                string b = RDLUpgrader.Get2010NamespaceURI();
                if (xmlReader.NamespaceURI == b)
                {
                    throw e.Exception;
                }
                if (!this.m_skippingInvalidElements)
                {
                    this.m_skippingInvalidElements = true;
                    StringBuilder stringBuilder = new StringBuilder();
                    while (!xmlReader.EOF)
                    {
                        if (xmlReader.NodeType != XmlNodeType.Element && xmlReader.NodeType != XmlNodeType.Text)
                        {
                            break;
                        }
                        if (!(xmlReader.NamespaceURI != b))
                        {
                            break;
                        }
                        if (xmlReader.NodeType == XmlNodeType.Text)
                        {
                            stringBuilder.Append(xmlReader.ReadString());
                        }
                        else
                        {
                            xmlReader.Skip();
                        }
                        xmlReader.MoveToContent();
                    }
                    this.m_host.ExtraStringData    = stringBuilder.ToString();
                    this.m_skippingInvalidElements = false;
                }
            }
        }
Пример #3
0
 public static Stream UpgradeToCurrent(Stream inStream, bool throwUpgradeException)
 {
     return(RDLUpgrader.UpgradeToCurrent(inStream, throwUpgradeException, true));
 }
Пример #4
0
 internal static Stream UpgradeToCurrent(Stream inStream, bool throwUpgradeException)
 {
     return(RDLUpgrader.UpgradeToCurrent(inStream, throwUpgradeException, renameInvalidDataSources: true));
 }