ServiceDescriptionBaseCollection 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
System.Web.Services.Description 네임스페이스의 멤버이고 강력한 형식의 컬렉션에 대한 기초를 구성합니다.
public ref class ServiceDescriptionBaseCollection abstract : System::Collections::CollectionBase
public abstract class ServiceDescriptionBaseCollection : System.Collections.CollectionBase
type ServiceDescriptionBaseCollection = class
inherit CollectionBase
Public MustInherit Class ServiceDescriptionBaseCollection
Inherits CollectionBase
- 상속
- 파생
예제
static void MyMethod( ServiceDescriptionBaseCollection^ myServiceCollection )
{
Type^ myType = myServiceCollection->GetType();
if ( myType->Equals( System::Web::Services::Description::ServiceCollection::typeid ) )
{
// Remove the services at index 0 of the collection.
(dynamic_cast<ServiceCollection^>(myServiceCollection))->Remove( myServiceDescription->Services[ 0 ] );
// Build a new Service.
Service^ myService = gcnew Service;
myService->Name = "MathService";
XmlQualifiedName^ myXmlQualifiedName = gcnew XmlQualifiedName( "s0:MathServiceSoap" );
// Build a new Port for SOAP.
Port^ mySoapPort = gcnew Port;
mySoapPort->Name = "MathServiceSoap";
mySoapPort->Binding = myXmlQualifiedName;
SoapAddressBinding^ mySoapAddressBinding = gcnew SoapAddressBinding;
mySoapAddressBinding->Location = "http://localhost/"
"ServiceDescriptionBaseCollection/AddSubtractService.CS.asmx";
mySoapPort->Extensions->Add( mySoapAddressBinding );
// Build a new Port for HTTP-GET.
XmlQualifiedName^ myXmlQualifiedName2 = gcnew XmlQualifiedName( "s0:MathServiceHttpGet" );
Port^ myHttpGetPort = gcnew Port;
myHttpGetPort->Name = "MathServiceHttpGet";
myHttpGetPort->Binding = myXmlQualifiedName2;
HttpAddressBinding^ myHttpAddressBinding = gcnew HttpAddressBinding;
myHttpAddressBinding->Location = "http://localhost/"
"ServiceDescriptionBaseCollection/AddSubtractService.CS.asmx";
myHttpGetPort->Extensions->Add( myHttpAddressBinding );
// Add the ports to the Service.
myService->Ports->Add( myHttpGetPort );
myService->Ports->Add( mySoapPort );
// Add the Service to the ServiceCollection.
myServiceDescription->Services->Add( myService );
}
else
if ( myType->Equals( System::Web::Services::Description::BindingCollection::typeid ) )
{
// Remove the Binding in the BindingCollection at index 0.
(dynamic_cast<BindingCollection^>(myServiceCollection))->Remove( myServiceDescription->Bindings[ 0 ] );
// Build a new Binding.
Binding^ myBinding = gcnew Binding;
myBinding->Name = "MathServiceSoap";
XmlQualifiedName^ myXmlQualifiedName = gcnew XmlQualifiedName( "s0:MathServiceSoap" );
myBinding->Type = myXmlQualifiedName;
SoapBinding^ mySoapBinding = gcnew SoapBinding;
mySoapBinding->Transport = "http://schemas.xmlsoap.org/soap/http";
mySoapBinding->Style = SoapBindingStyle::Document;
// Create the operations for the binding.
OperationBinding^ addOperationBinding = CreateOperationBinding( "Add", myServiceDescription->TargetNamespace );
OperationBinding^ subtractOperationBinding = CreateOperationBinding( "Subtract", myServiceDescription->TargetNamespace );
// Add the operations to the Binding.
myBinding->Operations->Add( subtractOperationBinding );
myBinding->Operations->Add( addOperationBinding );
myBinding->Extensions->Add( mySoapBinding );
// Add the Binding to the Bindings collection.
myServiceDescription->Bindings->Add( myBinding );
}
else
if ( myType->Equals( System::Web::Services::Description::PortTypeCollection::typeid ) )
{
// Remove the PortType at index 0.
(dynamic_cast<PortTypeCollection^>(myServiceCollection))->Remove( myServiceDescription->PortTypes[ 0 ] );
// Build a new PortType.
PortType^ myPortType = gcnew PortType;
myPortType->Name = "MathServiceSoap";
// Build an Add Operation for the PortType.
Operation^ myAddOperation = gcnew Operation;
myAddOperation->Name = "Add";
// Build the Input and Output messages for the Operations.
OperationInput^ myOperationInputMessage1 = gcnew OperationInput;
XmlQualifiedName^ myXmlQualifiedName1 = gcnew XmlQualifiedName( "s0:AddSoapIn" );
myOperationInputMessage1->Message = myXmlQualifiedName1;
OperationOutput^ myOperationOutputMessage1 = gcnew OperationOutput;
XmlQualifiedName^ myXmlQualifiedName2 = gcnew XmlQualifiedName( "s0:AddSoapOut" );
myOperationOutputMessage1->Message = myXmlQualifiedName2;
// Add the messages to the operations.
myAddOperation->Messages->Add( myOperationInputMessage1 );
myAddOperation->Messages->Add( myOperationOutputMessage1 );
// Build an Add Operation for the PortType.
Operation^ mySubtractOperation = gcnew Operation;
mySubtractOperation->Name = "Subtract";
// Build the Input and Output messages for the operations.
OperationInput^ myOperationInputMessage2 = gcnew OperationInput;
XmlQualifiedName^ myXmlQualifiedName3 = gcnew XmlQualifiedName( "s0:SubtractSoapIn" );
myOperationInputMessage2->Message = myXmlQualifiedName3;
OperationOutput^ myOperationOutputMessage2 = gcnew OperationOutput;
XmlQualifiedName^ myXmlQualifiedName4 = gcnew XmlQualifiedName( "s0:SubtractSoapOut" );
myOperationOutputMessage2->Message = myXmlQualifiedName4;
// Add the messages to the operations.
mySubtractOperation->Messages->Add( myOperationInputMessage2 );
mySubtractOperation->Messages->Add( myOperationOutputMessage2 );
// Add the operations to the PortType.
myPortType->Operations->Add( myAddOperation );
myPortType->Operations->Add( mySubtractOperation );
// Add the PortType to the collection.
myServiceDescription->PortTypes->Add( myPortType );
}
}
public static void MyMethod(
ServiceDescriptionBaseCollection myServiceCollection)
{
Type myType = myServiceCollection.GetType();
if (myType.Equals(
typeof(System.Web.Services.Description.ServiceCollection)))
{
// Remove the services at index 0 of the collection.
((ServiceCollection)myServiceCollection).Remove(
myServiceDescription.Services[0]);
// Build a new Service.
Service myService =new Service();
myService.Name="MathService";
XmlQualifiedName myXmlQualifiedName =
new XmlQualifiedName("s0:MathServiceSoap");
// Build a new Port for SOAP.
Port mySoapPort= new Port();
mySoapPort.Name="MathServiceSoap";
mySoapPort.Binding=myXmlQualifiedName;
SoapAddressBinding mySoapAddressBinding = new SoapAddressBinding();
mySoapAddressBinding.Location = "http://localhost/" +
"ServiceDescriptionBaseCollection/AddSubtractService.CS.asmx";
mySoapPort.Extensions.Add(mySoapAddressBinding);
// Build a new Port for HTTP-GET.
XmlQualifiedName myXmlQualifiedName2 =
new XmlQualifiedName("s0:MathServiceHttpGet");
Port myHttpGetPort= new Port();
myHttpGetPort.Name="MathServiceHttpGet";
myHttpGetPort.Binding=myXmlQualifiedName2;
HttpAddressBinding myHttpAddressBinding = new HttpAddressBinding();
myHttpAddressBinding.Location = "http://localhost/" +
"ServiceDescriptionBaseCollection/AddSubtractService.CS.asmx";
myHttpGetPort.Extensions.Add(myHttpAddressBinding);
// Add the ports to the Service.
myService.Ports.Add(myHttpGetPort);
myService.Ports.Add(mySoapPort);
// Add the Service to the ServiceCollection.
myServiceDescription.Services.Add(myService);
}
else if(myType.Equals(
typeof(System.Web.Services.Description.BindingCollection)))
{
// Remove the Binding in the BindingCollection at index 0.
((BindingCollection)myServiceCollection).Remove(
myServiceDescription.Bindings[0]);
// Build a new Binding.
Binding myBinding = new Binding();
myBinding.Name = "MathServiceSoap";
XmlQualifiedName myXmlQualifiedName =
new XmlQualifiedName("s0:MathServiceSoap");
myBinding.Type=myXmlQualifiedName;
SoapBinding mySoapBinding = new SoapBinding();
mySoapBinding.Transport = "http://schemas.xmlsoap.org/soap/http";
mySoapBinding.Style = SoapBindingStyle.Document;
// Create the operations for the binding.
OperationBinding addOperationBinding = CreateOperationBinding(
"Add", myServiceDescription.TargetNamespace);
OperationBinding subtractOperationBinding = CreateOperationBinding(
"Subtract",myServiceDescription.TargetNamespace);
// Add the operations to the Binding.
myBinding.Operations.Add(subtractOperationBinding);
myBinding.Operations.Add(addOperationBinding);
myBinding.Extensions.Add(mySoapBinding);
// Add the Binding to the Bindings collection.
myServiceDescription.Bindings.Add(myBinding);
}
else if (myType.Equals(
typeof(System.Web.Services.Description.PortTypeCollection)))
{
// Remove the PortType at index 0.
((PortTypeCollection)myServiceCollection).Remove(
myServiceDescription.PortTypes[0]);
// Build a new PortType.
PortType myPortType = new PortType();
myPortType.Name = "MathServiceSoap";
// Build an Add Operation for the PortType.
Operation myAddOperation = new Operation();
myAddOperation.Name="Add";
// Build the Input and Output messages for the Operations.
OperationInput myOperationInputMessage1 = new OperationInput();
XmlQualifiedName myXmlQualifiedName1 =
new XmlQualifiedName("s0:AddSoapIn");
myOperationInputMessage1.Message = myXmlQualifiedName1;
OperationOutput myOperationOutputMessage1 = new OperationOutput();
XmlQualifiedName myXmlQualifiedName2 =
new XmlQualifiedName("s0:AddSoapOut");
myOperationOutputMessage1.Message=myXmlQualifiedName2;
// Add the messages to the operations.
myAddOperation.Messages.Add(myOperationInputMessage1);
myAddOperation.Messages.Add(myOperationOutputMessage1);
// Build an Add Operation for the PortType.
Operation mySubtractOperation = new Operation();
mySubtractOperation.Name = "Subtract";
// Build the Input and Output messages for the operations.
OperationInput myOperationInputMessage2 = new OperationInput();
XmlQualifiedName myXmlQualifiedName3 =
new XmlQualifiedName("s0:SubtractSoapIn");
myOperationInputMessage2.Message = myXmlQualifiedName3;
OperationOutput myOperationOutputMessage2 = new OperationOutput();
XmlQualifiedName myXmlQualifiedName4 =
new XmlQualifiedName("s0:SubtractSoapOut");
myOperationOutputMessage2.Message = myXmlQualifiedName4;
// Add the messages to the operations.
mySubtractOperation.Messages.Add(myOperationInputMessage2);
mySubtractOperation.Messages.Add(myOperationOutputMessage2);
// Add the operations to the PortType.
myPortType.Operations.Add(myAddOperation);
myPortType.Operations.Add(mySubtractOperation);
// Add the PortType to the collection.
myServiceDescription.PortTypes.Add(myPortType);
}
}
Public Shared Sub MyMethod(myServiceCollection As _
ServiceDescriptionBaseCollection)
Dim myType As Type = myServiceCollection.GetType()
If myType.Equals( _
GetType(System.Web.Services.Description.ServiceCollection)) Then
' Remove the services at index 0 of the collection.
CType(myServiceCollection, ServiceCollection).Remove( _
myServiceDescription.Services(0))
' Build a new Service.
Dim myService As New Service()
myService.Name = "MathService"
Dim myXmlQualifiedName As _
New XmlQualifiedName("s0:MathServiceSoap")
' Build a new Port for SOAP.
Dim mySoapPort As New Port()
mySoapPort.Name = "MathServiceSoap"
mySoapPort.Binding = myXmlQualifiedName
Dim mySoapAddressBinding As New SoapAddressBinding()
mySoapAddressBinding.Location = "http://localhost/" & _
"ServiceDescriptionBaseCollection_VB/AddSubtractService.VB.asmx"
mySoapPort.Extensions.Add(mySoapAddressBinding)
' Build a new Port for HTTP-GET.
Dim myXmlQualifiedName2 As _
New XmlQualifiedName("s0:MathServiceHttpGet")
Dim myHttpGetPort As New Port()
myHttpGetPort.Name = "MathServiceHttpGet"
myHttpGetPort.Binding = myXmlQualifiedName2
Dim myHttpAddressBinding As New HttpAddressBinding()
myHttpAddressBinding.Location = "http://localhost/" & _
"ServiceDescriptionBaseCollection_VB/AddSubtractService.VB.asmx"
myHttpGetPort.Extensions.Add(myHttpAddressBinding)
' Add the ports to the Service.
myService.Ports.Add(myHttpGetPort)
myService.Ports.Add(mySoapPort)
' Add the Service to the ServiceCollection.
myServiceDescription.Services.Add(myService)
Else
If myType.Equals( _
GetType(System.Web.Services.Description.BindingCollection)) Then
' Remove the Binding in the BindingCollection at index 0.
CType(myServiceCollection, BindingCollection).Remove( _
myServiceDescription.Bindings(0))
' Build a new Binding.
Dim myBinding As New Binding()
myBinding.Name = "MathServiceSoap"
Dim myXmlQualifiedName As _
New XmlQualifiedName("s0:MathServiceSoap")
myBinding.Type = myXmlQualifiedName
Dim mySoapBinding As New SoapBinding()
mySoapBinding.Transport = "http://schemas.xmlsoap.org/soap/http"
mySoapBinding.Style = SoapBindingStyle.Document
' Create the operations for the binding.
Dim addOperationBinding As OperationBinding = _
CreateOperationBinding("Add", _
myServiceDescription.TargetNamespace)
Dim subtractOperationBinding As OperationBinding = _
CreateOperationBinding("Subtract", _
myServiceDescription.TargetNamespace)
' Add the operations to the Binding.
myBinding.Operations.Add(subtractOperationBinding)
myBinding.Operations.Add(addOperationBinding)
myBinding.Extensions.Add(mySoapBinding)
' Add the Binding to the Bindings collection.
myServiceDescription.Bindings.Add(myBinding)
Else
If myType.Equals( _
GetType(System.Web.Services.Description.PortTypeCollection)) Then
' Remove the PortType at index 0.
CType(myServiceCollection, PortTypeCollection).Remove( _
myServiceDescription.PortTypes(0))
' Build a new PortType.
Dim myPortType As New PortType()
myPortType.Name = "MathServiceSoap"
' Build an AddOperation for the PortType.
Dim myAddOperation As New Operation()
myAddOperation.Name = "Add"
' Build the Input and Output messages for the Operations.
Dim myOperationInputMessage1 As New OperationInput()
Dim myXmlQualifiedName1 As New XmlQualifiedName("s0:AddSoapIn")
myOperationInputMessage1.Message = myXmlQualifiedName1
Dim myOperationOutputMessage1 As New OperationOutput()
Dim myXmlQualifiedName2 As New XmlQualifiedName("s0:AddSoapOut")
myOperationOutputMessage1.Message = myXmlQualifiedName2
' Add the messages to the operations.
myAddOperation.Messages.Add(myOperationInputMessage1)
myAddOperation.Messages.Add(myOperationOutputMessage1)
' Build an Add Operation for the PortType.
Dim mySubtractOperation As New Operation()
mySubtractOperation.Name = "Subtract"
' Build the Input and Output messages for the operations.
Dim myOperationInputMessage2 As New OperationInput()
Dim myXmlQualifiedName3 As _
New XmlQualifiedName("s0:SubtractSoapIn")
myOperationInputMessage2.Message = myXmlQualifiedName3
Dim myOperationOutputMessage2 As New OperationOutput()
Dim myXmlQualifiedName4 As _
New XmlQualifiedName("s0:SubtractSoapOut")
myOperationOutputMessage2.Message = myXmlQualifiedName4
' Add the messages to the operations.
mySubtractOperation.Messages.Add(myOperationInputMessage2)
mySubtractOperation.Messages.Add(myOperationOutputMessage2)
' Add the operations to the PortType.
myPortType.Operations.Add(myAddOperation)
myPortType.Operations.Add(mySubtractOperation)
' Add the PortType to the collection.
myServiceDescription.PortTypes.Add(myPortType)
End If
End If
End If
End Sub
속성
Capacity |
CollectionBase에 포함될 수 있는 요소의 수를 가져오거나 설정합니다. (다음에서 상속됨 CollectionBase) |
Count |
CollectionBase 인스턴스에 포함된 요소 수를 가져옵니다. 이 속성은 재정의할 수 없습니다. (다음에서 상속됨 CollectionBase) |
InnerList |
ArrayList 인스턴스의 요소 목록을 포함하는 CollectionBase를 가져옵니다. (다음에서 상속됨 CollectionBase) |
List |
IList 인스턴스의 요소 목록을 포함하는 CollectionBase를 가져옵니다. (다음에서 상속됨 CollectionBase) |
Table |
ServiceDescriptionBaseCollection에서 키와 값의 연결을 구현하는 인터페이스를 가져옵니다. |
메서드
명시적 인터페이스 구현
확장 메서드
Cast<TResult>(IEnumerable) |
IEnumerable의 요소를 지정된 형식으로 캐스팅합니다. |
OfType<TResult>(IEnumerable) |
지정된 형식에 따라 IEnumerable의 요소를 필터링합니다. |
AsParallel(IEnumerable) |
쿼리를 병렬화할 수 있도록 합니다. |
AsQueryable(IEnumerable) |
IEnumerable을 IQueryable로 변환합니다. |