Run Operations on Business Components with the Siebel adapter using the WCF Channel Model
This section demonstrates how to perform operations on Siebel using the channel created in Create a Channel using Siebel.
Caution
This example or guidance references sensitive information, such as a connection string or a username and password. Never hardcode these values in your code, and make sure that you protect confidential data by using the most secure authentication available. For more information, see the following documentation:
// create binding
SiebelBinding binding = new SiebelBinding();
//set up an endpoint address
EndpointAddress address = new EndpointAddress("siebel://Username=myuser;Password=mypass@mysiebelserver:1234?SiebelObjectManager=SSEObjMgr&SiebelEnterpriseServer=ent771&Language=enu");
//create request channel factory
IChannelFactory<IRequestChannel> factory = binding.BuildChannelFactory<IRequestChannel>(new BindingParameterCollection());
//open factory
factory.Open();
//create request channel using endpoint
IRequestChannel channel = factory.CreateChannel(address);
//open the channel
channel.Open();
// send request message and receive reply
System.Xml.XmlReader readerIn = System.Xml.XmlReader.Create(inputXml);
System.ServiceModel.Channels.Message messageIn = System.ServiceModel.Channels.Message.CreateMessage(MessageVersion.Default,action,readerIn);
System.ServiceModel.Channels.Message messageOut = channel.Request(messageIn);
// get response XML from SOAP message
System.Xml.XmlReader readerOut = messageOut.GetReaderAtBodyContents();
// save output file
XmlDocument doc = new XmlDocument();
doc.Load(readerOut);
doc.Save(outputXml);
Console.WriteLine("XML written out to {0}", outputXml);
// close the channel and the factory
channel.Close();
factory.Close();
See Also
Develop Siebel Applications Using the WCF Channel Model
Run Operations on Business Components with the Siebel adapter Using the WCF Service Model