RptToXml.RptDefinitionWriter.GetTable C# (CSharp) Method

GetTable() private method

private GetTable ( CrystalDecisions table, XmlWriter writer ) : void
table CrystalDecisions
writer System.Xml.XmlWriter
return void
        private void GetTable(CrystalDecisions.ReportAppServer.DataDefModel.Table table, XmlWriter writer)
        {
            writer.WriteStartElement("Table");

            writer.WriteAttributeString("Alias", table.Alias);
            writer.WriteAttributeString("ClassName", table.ClassName);
            writer.WriteAttributeString("Name", table.Name);

            writer.WriteStartElement("ConnectionInfo");
            foreach (string propertyId in table.ConnectionInfo.Attributes.PropertyIDs)
            {
                // make attribute name safe for XML
                string attributeName = propertyId.Replace(" ", "_");

                writer.WriteAttributeString(attributeName, table.ConnectionInfo.Attributes[propertyId].ToString());
            }

            writer.WriteAttributeString("UserName", table.ConnectionInfo.UserName);
            writer.WriteAttributeString("Password", table.ConnectionInfo.Password);
            writer.WriteEndElement();

            var commandTable = table as CRDataDefModel.CommandTable;
            if (commandTable != null)
            {
                var cmdTable = commandTable;
                writer.WriteStartElement("Command");
                writer.WriteString(cmdTable.CommandText);
                writer.WriteEndElement();
            }

            writer.WriteStartElement("Fields");

            foreach (CrystalDecisions.ReportAppServer.DataDefModel.Field fd in table.DataFields)
            {
                GetFieldDefinition(fd, writer);
            }

            writer.WriteEndElement();

            writer.WriteEndElement();
        }