Solved

can a web method in a web service accept an xml string and return an xml string?

Posted on 2009-04-11
3
704 Views
Last Modified: 2012-08-13
Hi,
Can somebody please clarify how to parse an xml string in a web method and also return xml in the form of a string? I am not sure if I framed the question meaningfully? My web method's signature is as follows.
public string CreateAccount(string XMLInfo)
In the above method, XMLInfo is a string consisting of xml and I should be able to parse the xml in the web method. And also I would return multiple values but through a single string consisting of again xml. It would be a great help if you could post me a code sample in C#.
Thanks for any help!
0
Comment
Question by:ipjyo
  • 2
3 Comments
 
LVL 12

Expert Comment

by:Nirmalan Nagenthiran
ID: 24124523
Yes its possible. Pass that XML file as a string and inside the web method convert it back to XML, do all XML processing.
Here is the code piece.

 [WebMethod]
 public string ProcessXML(string xmlInfo)
 {
     XmlDocument document = new XmlDocument();
     document.LoadXml(xmlInfo);
 
     // Add more values to the XML file.
         
     // Return XML as String.
     return document.InnerXml;
 }

Open in new window

0
 

Author Comment

by:ipjyo
ID: 24124544
Thanks for the response.
could you also clarify how would the consumer of this web method know what input parameters that should be given?
If we pass 5 individual parameters then the consumer will have 5 text boxes to enter data. but how will this happen if we pass xml as a string? what will the consumer see when he tries to access the web service? Thank you!
0
 
LVL 12

Accepted Solution

by:
Nirmalan Nagenthiran earned 500 total points
ID: 24124627
Please find the attach code pieces. Let me know your thoughts.
<!-- UserInput.xml -->
 
<?xml version="1.0" encoding="UTF-8"?>
<USERINPUT>
    <TITLE>Add your Title Here</TITLE>
    <FIRSTNAME>Add your Firstname</FIRSTNAME> 
    <LASTNAME>Add your Lastname</LASTNAME>
    <ADDRESS>Add your address</ADDRESS>
    <TELEPHONE>Add your telephone</TELEPHONE>
</USERINPUT>   
 
// Web Service - Web Method
 
[WebMethod]
public string CreateAccount(string xmlinfo)
{
    // Load XML.
    XmlDocument document = new XmlDocument();
    document.LoadXml(xmlinfo);
 
    // Add/Modify values to the XML file.
            
    // Return XML as String.
    return document.InnerXml;
}
 
// Consume WebService
 
protected void Page_Load(object sender, EventArgs e)
{
     // Load the UserInput.Xml
     XmlDocument doc = new XmlDocument();
     doc.Load(@"C:\UserInput.xml");
 
     // Add 5 input values into the XML file
 
     // Call the Webservice and pass the XML.
     Service1 service = new Service1();
     string responseXML =  service.CreateAccount(doc.InnerText);
 
     // Again load the response as XML.
     doc.LoadXml(responseXML);
 
     // Do other manipulations here..
}

Open in new window

0

Featured Post

Webinar: Aligning, Automating, Winning

Join Dan Russo, Senior Manager of Operations Intelligence, for an in-depth discussion on how Dealertrack, leading provider of integrated digital solutions for the automotive industry, transformed their DevOps processes to increase collaboration and move with greater velocity.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Thoughout my experience working on eCommerce web applications I have seen applications succumbing to increased user demand and throughput. With increased loads the response times started to spike, which leads to user frustration and lost sales. I ha…
The task of choosing a web design company to build a website for your business should never be taken in a light manner. Provided the fact that your website will act as a representative to your business and will be responsible for imposing an online …
The purpose of this video is to demonstrate how to set up the WordPress backend so that each page automatically generates a Mailchimp signup form in the sidebar. This will be demonstrated using a Windows 8 PC. Tools Used are Photoshop, Awesome…
Use Wufoo, an online form creation tool, to make powerful forms. Learn how to selectively show certain fields based on user input using rules to gather relevant information and data from your forms. The rules feature provides you with an opportunity…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question