本文整理汇总了C#中System.Web.Services.Description.OperationBinding类的典型用法代码示例。如果您正苦于以下问题:C# OperationBinding类的具体用法?C# OperationBinding怎么用?C# OperationBinding使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
OperationBinding类属于System.Web.Services.Description命名空间,在下文中一共展示了OperationBinding类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Main
//引入命名空间
using System;
using System.Web.Services.Description;
class MyOperationBindingSample
{
static void Main()
{
try
{
ServiceDescription myServiceDescription =
ServiceDescription.Read("MathService_input_cs.wsdl");
string myTargetNamespace = myServiceDescription.TargetNamespace;
// Create an OperationBinding for the Add operation.
OperationBinding addOperationBinding = new OperationBinding();
string addOperation = "Add";
addOperationBinding.Name = addOperation;
// Create an InputBinding for the Add operation.
InputBinding myInputBinding = new InputBinding();
SoapBodyBinding mySoapBodyBinding = new SoapBodyBinding();
mySoapBodyBinding.Use = SoapBindingUse.Literal;
myInputBinding.Extensions.Add(mySoapBodyBinding);
// Add the InputBinding to the OperationBinding.
addOperationBinding.Input = myInputBinding;
// Create an OutputBinding for the Add operation.
OutputBinding myOutputBinding = new OutputBinding();
myOutputBinding.Extensions.Add(mySoapBodyBinding);
// Add the OutputBinding to the OperationBinding.
addOperationBinding.Output = myOutputBinding;
// Create an extensibility element for a SoapOperationBinding.
SoapOperationBinding mySoapOperationBinding =
new SoapOperationBinding();
mySoapOperationBinding.Style = SoapBindingStyle.Document;
mySoapOperationBinding.SoapAction = myTargetNamespace + addOperation;
// Add the extensibility element SoapOperationBinding to
// the OperationBinding.
addOperationBinding.Extensions.Add(mySoapOperationBinding);
ServiceDescriptionFormatExtensionCollection myExtensions;
// Get the FaultBindingCollection from the OperationBinding.
FaultBindingCollection myFaultBindingCollection =
addOperationBinding.Faults;
FaultBinding myFaultBinding = new FaultBinding();
myFaultBinding.Name = "ErrorFloat";
// Associate SOAP fault binding to the fault binding of the operation.
myExtensions = myFaultBinding.Extensions;
SoapFaultBinding mySoapFaultBinding = new SoapFaultBinding();
mySoapFaultBinding.Use = SoapBindingUse.Literal;
mySoapFaultBinding.Namespace = myTargetNamespace;
myExtensions.Add(mySoapFaultBinding);
myFaultBindingCollection.Add(myFaultBinding);
// Get the BindingCollection from the ServiceDescription.
BindingCollection myBindingCollection =
myServiceDescription.Bindings;
// Get the OperationBindingCollection of SOAP binding
// from the BindingCollection.
OperationBindingCollection myOperationBindingCollection =
myBindingCollection[0].Operations;
myOperationBindingCollection.Add(addOperationBinding);
Console.WriteLine(
"The operations supported by this service are:");
foreach(OperationBinding myOperationBinding in
myOperationBindingCollection)
{
Binding myBinding = myOperationBinding.Binding;
Console.WriteLine(" Binding : " + myBinding.Name +
" :: Name of operation : " + myOperationBinding.Name);
FaultBindingCollection myFaultBindingCollection1 =
myOperationBinding.Faults;
foreach(FaultBinding myFaultBinding1 in
myFaultBindingCollection1)
{
Console.WriteLine(" Fault : " + myFaultBinding1.Name);
}
}
// Save the ServiceDescripition to an external file.
myServiceDescription.Write("MathService_new_cs.wsdl");
}
catch(Exception e)
{
Console.WriteLine("Exception caught!!!");
Console.WriteLine("Source : " + e.Source);
Console.WriteLine("Message : " + e.Message);
}
}
}