WCF学习心得(1): 获取一个服务所有的契约中的操作
学习WCF已经两天了,也慢慢找到了一些感觉,自己写了一个方法来得到服务的契约的操作,和大家分享一下
1
static void GetOperations(string baseAddress)
2
{
3
string mexAddress = baseAddress + "?WSDL";
4
MetadataExchangeClient client = new MetadataExchangeClient(new Uri(mexAddress), MetadataExchangeClientMode.HttpGet);
5
MetadataSet metaData = client.GetMetadata();
6
MetadataImporter importer = new WsdlImporter(metaData);
7
//得到所有终结点(endpoint)
8
ServiceEndpointCollection col = importer.ImportAllEndpoints();
9
foreach (ServiceEndpoint endPoint in col)
10
{
11
foreach (OperationDescription c in endPoint.Contract.Operations)
12
{
13
Console.WriteLine(c.Name);
14
}
15
}
16
}
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](/Images/OutliningIndicators/InBlock.gif)
4
![](/Images/OutliningIndicators/InBlock.gif)
5
![](/Images/OutliningIndicators/InBlock.gif)
6
![](/Images/OutliningIndicators/InBlock.gif)
7
![](/Images/OutliningIndicators/InBlock.gif)
8
![](/Images/OutliningIndicators/InBlock.gif)
9
![](/Images/OutliningIndicators/InBlock.gif)
10
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
11
![](/Images/OutliningIndicators/InBlock.gif)
12
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
13
![](/Images/OutliningIndicators/InBlock.gif)
14
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
15
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
16
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)