InfocardExtendedInformationEntry.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / infocard / Service / managed / Microsoft / InfoCards / InfocardExtendedInformationEntry.cs / 1 / InfocardExtendedInformationEntry.cs

                            //------------------------------------------------------------------------------ 
// Copyright (c) Microsoft Corporation.  All rights reserved.
//-----------------------------------------------------------------------------
namespace Microsoft.InfoCards
{ 
    using System;
    using System.Xml; 
    using System.Collections.Generic; 
    using System.Collections;
    using System.Xml.Serialization; 
    using System.Xml.Schema;
    using System.IO;
    using System.Text;
    using Microsoft.InfoCards.Diagnostics; 
    using IDT = Microsoft.InfoCards.Diagnostics.InfoCardTrace;
 
    // 
    // Summary
    //  An entry representing additional information contained in the card as part of xs:any 
    //
    internal class InfocardExtendedInformationEntry : IXmlSerializable
    {
 
        string m_xmlElement;
 
 
        //
        // Summary 
        //  Serialize the InfocardExtendedInformationEntry object
        //
        // Parameter
        //   writer - binary stream conforming to the serialization format supported by this class. 
        //
        public void Serialize( System.IO.BinaryWriter writer ) 
        { 
            Utility.SerializeString( writer, m_xmlElement );
        } 



        // 
        // Summary
        //  Deserialize the InfocardExtendedInformationEntry object 
        // 
        // Parameter
        //   reader - binary stream conforming to the serialization format supported by this class. 
        //
        public void Deserialize( System.IO.BinaryReader reader )
        {
            m_xmlElement = Utility.DeserializeString( reader ); 

        } 
 

        // 
        // Summary
        //   Return the xml.
        //
        public string GetXml() 
        {
            return m_xmlElement; 
        } 

 
        public XmlSchema GetSchema()
        {
            return null;
        } 

        // 
        // Summary 
        //  Write the InfocardExtendedInformation to xml.
        // 
        // Parameters
        //   writer - The XmlWriter to write the data to
        //
        public void WriteXml( XmlWriter writer ) 
        {
            if( null == writer ) 
            { 
                throw IDT.ThrowHelperArgumentNull( "writer" );
            } 

            XmlReader reader = InfoCardSchemas.CreateReader( m_xmlElement );
            writer.WriteNode( reader, false );
 
        }
 
 

        // 
        // Summary
        //  Read the ExtendedInformationEntry from the xml. In future this function will read all
        //  the elements which are a part of the crd file ( as the xs:any elements )
        //  For now, only the IssuerInformation element is being read. 
        //
        // Parameters 
        //   reader - The XmlReader to read data from 
        //
        public void ReadXml( XmlReader reader ) 
        {
            if( !reader.IsStartElement() )
            {
                throw IDT.ThrowHelperError( new InvalidCardException( SR.GetString( SR.UnexpectedElement ) ) ); 
            }
 
            XmlReader subtreeReader = reader.ReadSubtree(); 

            subtreeReader.Read(); 

            m_xmlElement = subtreeReader.ReadOuterXml();

            subtreeReader.Close(); 
        }
 
    } 

 

}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK