xml doc upload code for you

Discussion in 'ASP .Net' started by Girish, Feb 20, 2004.

  1. Girish

    Girish Guest

    Hi Guys

    Enjoy the xml upload code I believe which I got from my SERVICE PROVIDER,
    Now do me a favor back, can you please translate it to ASP ?

    =======================================
    private enum ReturnCode { Success, Error, NoData, FileIOError };



    private void Page_Load(object sender, System.EventArgs e)

    {

    ReturnCode returnCode = ReturnCode.Success;



    try

    {

    returnCode = Upload();

    }

    catch

    {

    returnCode = ReturnCode.Error;

    }

    finally

    {

    Response.Output.Write(
    "<result><returnCode>{0}</returnCode></result>", returnCode );

    }

    }



    private ReturnCode Upload()

    {

    ReturnCode returnCode = ReturnCode.Success;



    //

    // Make sure we have something to work with

    //

    int bLen = Context.Request.ContentLength;

    if( bLen > 0 )

    {

    //

    // The body contains XML formatted as ADF...

    // so convert the bytes to string.

    //

    byte[] bytes = Context.Request.BinaryRead( bLen );

    string msg = Encoding.ASCII.GetString( bytes, 0,
    bLen );



    //

    // At this point we have some data and we expect

    // it to be an ADF report, which is valid XML.

    //

    NameTable nt = new NameTable();

    XmlNamespaceManager nsmgr = new
    XmlNamespaceManager( nt );

    XmlParserContext pc = new
    XmlParserContext( null, nsmgr, null, XmlSpace.None );

    XmlValidatingReader xmlReader = new XmlValidatingReader(
    msg, XmlNodeType.Document, pc );



    //

    // The Microsoft XML parser cannot resolve the

    // colorcombination element... so for now, just

    // disable the validation.

    //

    xmlReader.ValidationType = ValidationType.None;



    //

    // Load the document

    //

    XPathDocument xDoc = new XPathDocument( xmlReader );

    XPathNavigator nav = xDoc.CreateNavigator();



    //

    // Find the call id so that we can use it as a filename.

    //

    string cdrID = null;

    XPathNodeIterator iter = nav.Select( "/adf/prospect" );

    while( iter.MoveNext() && cdrID == null )

    {

    XPathNodeIterator prospectIter =
    iter.Current.SelectChildren( XPathNodeType.Element );

    while( prospectIter.MoveNext() )

    {

    if( string.Compare( prospectIter.Current.Name,
    "id", true ) == 0 )

    {

    cdrID = prospectIter.Current.Value;

    break;

    }

    }

    }



    try

    {

    if( cdrID != null )

    {

    string dir =
    ConfigurationSettings.AppSettings[ "DataFileDir" ];

    if( dir == null || dir.Length == 0 )

    {

    // default to the current directory

    dir = ".";

    }



    string fileName = string.Format(
    @"{0}\{1}.xml", dir, cdrID );



    using( StreamWriter writer =

    new StreamWriter( new
    FileStream( fileName, FileMode.Create ),



    System.Text.Encoding.ASCII ) )

    {

    writer.WriteLine( msg );

    }

    }

    }

    catch

    {

    returnCode = ReturnCode.FileIOError;

    }

    }

    else

    {

    returnCode = ReturnCode.NoData;

    }



    return returnCode;

    }

    =======================================


    Thanks

    G
     
    Girish, Feb 20, 2004
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. John Wallace
    Replies:
    0
    Views:
    483
    John Wallace
    Jul 22, 2003
  2. Matt
    Replies:
    3
    Views:
    531
    Tor Iver Wilhelmsen
    Sep 17, 2004
  3. Praveen Chhangani

    Converting a org.jdom DOC to org.w3c DOC

    Praveen Chhangani, Aug 5, 2003, in forum: XML
    Replies:
    2
    Views:
    979
    Johannes Koch
    Aug 7, 2003
  4. News123
    Replies:
    0
    Views:
    300
    News123
    Feb 6, 2010
  5. Replies:
    0
    Views:
    142
Loading...

Share This Page