Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于元数据的WCF服务发现_Wcf_Service_Wcf Binding_Discovery - Fatal编程技术网

基于元数据的WCF服务发现

基于元数据的WCF服务发现,wcf,service,wcf-binding,discovery,Wcf,Service,Wcf Binding,Discovery,您好,我正在寻找一个WCF示例,其中包括服务发现和发现/检测绑定类型的方法,我认为可以使用元数据交换来完成 . 我刚刚找到了正确答案,以下是完成任务的步骤: 添加一个mex端点 添加元数据以更改行为 在客户端应用程序中,使用具有元数据条件的发现 使用metdatada标准的发现 DiscoveryClient discoveryClient = new DiscoveryClient(new UdpDiscoveryEndpoint()); FindCriteria findCriteria

您好,我正在寻找一个WCF示例,其中包括服务发现和发现/检测绑定类型的方法,我认为可以使用元数据交换来完成
.

我刚刚找到了正确答案,以下是完成任务的步骤:

  • 添加一个mex端点
  • 添加元数据以更改行为
  • 在客户端应用程序中,使用具有元数据条件的发现
  • 使用metdatada标准的发现

    DiscoveryClient discoveryClient = new DiscoveryClient(new UdpDiscoveryEndpoint());
    FindCriteria findCriteria =   FindCriteria.CreateMetadataExchangeEndpointCriteria    (ContractType);
        findCriteria.Duration = TimeSpan.FromSeconds(15);
        findCriteria.MaxResults = 1;// MaxResults;
    
        FindResponse result = discoveryClient.Find(findCriteria);
        discoveryClient.Close();
    
    
        ServiceEndpointCollection eps = MetadataResolver.Resolve(ContractType, result.Endpoints[0].Address);
        return eps[0].Binding;