.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
david stephan
Gaurav Pal
Post New Web Links

WCF : How to prevent an endpoint from being published in the service WSDL?

Posted By:      Posted Date: September 14, 2010    Points: 0   Category :WCF
Suppose I have a WCF service which has 2 endpoints A and B. I want to enable mex/wsdl on this service but my requirement is that B should not be published in the WSDL. So to say B is only for internal purpose and clients should never be aware of it. Is there a way (most probably somehow using IWsdlExporterExtension), to remove this endpoint B from being published in the metadata?

View Complete Post

More Related Resource Links

Incorrect hostname in EndPoint location in WSDL for a service with multiple bindings and with multip

We have a WCF web service that is exposed through multiple bindings.  The site is  accessed through multiple IP Addresses/Hostnames (internet/intranet).  Some of the bindings use http transport while others use https transport. The web application is configured to use .NET 4.0 with multipleSiteBindingsEnabled="true" so that we shouldn't have problems with multiple ip addresses/hostnames. What we see is that when the WSDL is accessed using a http based URL (external), the hostnames in the endpoint addresses for http transport based bindings in WSDL are correct (ie, they use the hostname header from the request) while the hostnames in the endpoint addresses for https transport based bindings in the WSDL are incorrect (ie, they do not use the hostname header in the request - they seem to use the hostname from the first available binding in IIS for that scheme and end up with the local machine names/ip addresses in the URL).   We could work around by setting the external hostname/ip in the first binding in IIS for the respective scheme, but then WSDLs accessed from intranet clients would have wrong URLS now. This happens the other way around as well, ie, when the WSDL is accessed using https, the https based addresses are fine, but http addresses in the WSDL are not correct. It looks like hostname header is used only for WSDL endpoint addre

How do I generate proxy class for webservice with no WSDL published?

 Hello, I need to utilize following web service: https://www.icds.att.com/xmlrequest Service publishes 2 XML files (one for Request and another for Response) https://www.icds.att.com/schemas/XMLRequest.xsd and https://www.icds.att.com/schemas/XMLResponse.xsd. I generated classes for those manually, but my question is how do I actually utilize web service (generate proxy file) in this case. Do I have to code everything manually?

The service cannot be started. This service has no endpoint defined....But it has!?!

Hi Foks,I'm following this tutorial on how to create RESTful services in WCF:http://www.codemeit.com/wcf/wcf-restful-pox-json-and-soap-coexist.htmlI would like to test the created service using the WCF Default Test Client, but when I run the application (F5) the service does not start and I get this message:"The service cannot be started. This service has no endpoint defined. Please add at least one endpoint for the service in config file and try again."However I do have endpoints defined for this service..I also have two other services running in the same application, which work fine:This is the relevant portion of my app.config:<behaviors>              <serviceBehaviors>                        <behavior name="WCF_Lib_Default.Service1Behavior">                   <serviceMetadata httpGetEnabled="True"/>                   <serviceDebug includeExceptionDetailInFaults="False" />             &nbs

How to set and map a Method in the Service file with endpoint elements and binding elements

Hi all, I have created a service file like OSService.svc in that i have two methods like one is FileUpload and FileDownload for e.g :- [WebInvoke(UriTemplate = "/fileupload/{fileName}" , Method = "POST" )]         [OperationContract]         void FileUpload(string fileName, Stream fileContents); same as Filedownload also. People you may know these methods are inside the interface of service file what you are using i'e i have created a interface as IOSService.cs. So, what i need now is i want to write separate endpoint for FileUpload and Filedownload.Because i want to set separate value for receiveTimeout  and openTimeout for the Fileupload and FileDownload process in binding section in the web.config file itself. The below code was i'm using right now but still i'm not able to the set separate value of endpoint elements in the bindings. EndPoint Section:- <endpoint name = "endPoint1"  address  = "localhost:8000/OSService.svc/" bindingConfiguration = "TransactionalTCP"   binding  = "netTcpBinding"          contract = "IOSService"/> Binding Section:-  <binding name = "TransactionalTCP"  transactionFlow = "true"   /&

To prevent the service from aborting idle sessions prematurely increase the Receive timeout on the s

The following error is issued following 10 minutes of system inactivity: An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail. ---> System.ServiceModel.FaultException: The message could not be processed. This is most likely because the action 'http://tempuri.org/IParticipant/SearchParticipants' is incorrect or because the message contains an invalid or expired security context token or because there is a mismatch between bindings. The security context token would be invalid if the service aborted the channel due to inactivity. To prevent the service from aborting idle sessions prematurely increase the Receive timeout on the service endpoint's binding. Per the message, I tried changing the app config on the client from     receiveTimeout     ="00:10:00" to     receiveTimeout="10:00:00" but the change seems to have no impact.  What am I missing?

Calling one endpoint from another endpoint in the same service

Hi, I have a WCF service host Im hosting in IIS that defines a few services and one of those services has a number of endpoints. The endpoints that belong to the same service are there to let me specify different contracts and they all use the same binding and behaviour. For the most part it works fine until a specific situation occurs: The service gets stuck when one of the endpoints tries to make a call to another endpoint in the same service. Consider the following example: <service behaviorConfiguration="GeneralServiceBehavior" name="Base"> <endpoint address="/Addresses" binding="wsHttpBinding" bindingConfiguration="wsHttpBindingConfig" contract="CommonObjects.IAddresss" /> <endpoint address="/Attachments" binding="wsHttpBinding" bindingConfiguration="wsHttpBindingConfig" contract="CommonObjects.IAttachments" /> </service> In the example above if a call is made from IAttachments implementor back to this service to access the IAddress endpoint I get stuck in what seems to be a deadlock until I get a timeout on the calling thread and then I see the call come through to the IAddress endpoint, but at that point its already too late as the channel is closed. I have looked at the InstanceContext and ConcurrencyMode. This particular servic

Consuming Web Service. Dynamic WSDL ???

Hi everyone. I'm trying to consume a web service with my asp.net application. I've done the basic procedure of creating proxy classes but it won't work. After I spent hours debugging and talking to network support, I realized that a section within the WSDL was dynamic. The WSDL is located in a url like this: http://service/MyWebService?WSDL In the WSDL I have a section like this:<s0:service name="MyWebService"> <s0:port binding="s3:MyWebServiceSoap" name="MyWebServiceSoap"> <s4:address location="http://server1/MyWebService" /> </s0:port> </s0:service> If I press F5 on the browser, the WSDL shows a different address (only the server changes, actually). The range goes from server1 to server9. I've been informed that this service was hosted with some sort of balance system that redirect the requests amongst different servers according to a number of rules. I was also told that I only needed permission to access the balance server ("service"). So, I actually can't see those other "real" servers. When I generated my proxy classes, WSDL showed a path for server1. When I run my application I get a connection error ponting to the IP of server1. They said they can't give me permission to connect directly to server1 because it would kill the balance system. So, how can I con

Accessing a published web service gives null ref exception. Won't occur in test though?

I have an Asp.net web service that I created using Visual Studio 2005. I can acess the web service in my testenvironment, call methods and return data as expected. If this web service is published to the outside world (Outside of the company firewall), it will return a null reference exception. Does anyone have any idea why this might be happening? The same code is being used,against thesame database. The only difference is that the published website is giving back the null reference exception. If I type in the URL for the web service "https://secure.theSiteGeist.com/wsIndigo.asmx" a list of methods forthe web service is displayed in my browser. Yet if I try and call any methods on the web service I getback the null reference exception. Note that the URL I posted above is not the real name of my web service, but isjust used for reference sake.

Can't Add Service Reference in VS 2010 to a net.tcp endpoint

I've got a service running (well, it doesn't crash), but when I try to add a Service Reference to it, I keep getting Metadata contains a reference that cannot be resolved: 'net.tcp://localhost:55555/mex'. Metadata contains a reference that cannot be resolved: 'net.tcp://localhost:55555/mex'. If the service is defined in the current solution, try building the solution and adding the service reference again. The pertinent parts of my config file are:   <netTcpBinding> <binding name="ReliableDuplexBinding" closeTimeout="00:00:10" openTimeout="00:00:10" receiveTimeout="00:00:30" sendTimeout="00:00:15" maxBufferPoolSize="1048576" maxBufferSize="262144" maxReceivedMessageSize="262144"> <readerQuotas maxDepth="33" maxStringContentLength="100000" maxArrayLength="131072" maxBytesPerRead="262144" maxNameTableCharCount="54000" /> <reliableSession inactivityTimeout="05:00:00" enabled="true" /> <security mode="None"> <transport> <extendedProtectionPolicy policyEnforcement="Never" /> </transport> </security> </binding> </netTcpBinding> <behaviors> <serviceBehaviors> <behavior nam

WCF TCP-IP End Point Error : The message could not be dispatched because the service at the endpoint

"The message could not be dispatched because the service at the endpoint address 'net.tcp://' is unavailable for the protocol of the address." This is the Exception I am getting when I am trying to access my WCF Service with 'TCP-IP' end point. My Service Web.Config file is as follows. <system.serviceModel>     <bindings>       <webHttpBinding>         <binding name="JsonWebBinding">           <security mode="TransportCredentialOnly">             <transport clientCredentialType="Windows"></transport>           </security>         </binding>       </webHttpBinding>     </bindings>     <services>       <service behaviorConfiguration="SampleBehaviour" name="SeP.Library.ServiceLibrary.TerritoryMgt">         <endpoint address="" behaviorConfiguration="jsonEndPointBehaviour" binding="webHttpBinding" bindingConfiguration="JsonWebBinding"                &nbs

RESTful WCF Service endpoint not being found by client


I created a RESTful WCF service which I plan to call from a client app (a custom toolpart in a Sharepoint web part), but while I can access everything just fine from a browser the client throws this error:

EndpointNotFoundException: There was no endpoint listening at http://mymachine:3217/Services/CtmsService.svc that could accept the
message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.
---> System.Net.WebException: The remote server returned an error: (404) Not Found.

My service's contract looks like this:

public interface ICtmsService
  [WebGet(UriTemplate = "/GetAllSites")]
  Dictionary<string, int?> GetAllSites();
...and the configuration looks like this: (which is more complicated due to needing dependency injection via Spring.NET to work)


WCF routing Service and ServiceSecurityContext in endpoint behavior


I'm trying to fetch the caller information in endpoint behavior applied for a routing service. The ServiceSecurityContext appears to be null.

How to fetch principal in endpoint behavior of routing service? I was able to fetch the thread principal in serviceAuthorization behavior of the same routing service.

Integrated windows authentication was used.

WCF service JSON endpoint with certificate



I just spend some day trying to create a WCF service that expose a JSON service authentified with a certificate. I've try some example found on the web but didn't succeed. I need to use the JSON connection with a Java client. I use WCF because in the further client they will be windows clients too.

I presume that I've made some mistakes in my configuration file. Does someone has already make this kind of endpoint to communicate with a java client with succes ? I'm pretty sure it's possible.

Thx for any pointers

How to get rid of targetnamespace="http://tempuri.org" in Workflow WCF service WSDL (.NET 3.5)


I have created a Workflow Sequential Service which is hosted in IIS.


In the Servicecontract Interface you can define a ServiceContract namespace. Also you can define a namespace in the workflowserviceattributes property. But after changing these namespace properties I still get at the <wsdl : definition targetnamespace:http://tempuri.org.


How can I change that property in a workflowservice (WCF)?

Published WCF Service in IIS doesn't work



I'm using sync services and have a WCF service that works fine when run from teh debugger when hosted in the WCF test client that is spawned by the debugger.  But I have "published" my service to my machine and when I go to the UrL the page displays but when I try and run my sync application I get this error which make sit seem like IIS isn't "serving up" the service.  Any ideas??

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ServiceModel.EndpointNotFoundException: There was no endpoint listening at http://techpcjrl03.tech.service.com:8080/WcfSynchService.LocalEnterpriseSystemDBCacheSyncService/ that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details. ---> System.Net.WebException: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.Get

How to create wsdl proxy of web service with out event handler for .net compact framework 4


Hi All

i have one problem while access web service axis 1.4 in compact frame work

Create web service object using client

 MIScreenSoapClient ser = new MIScreenSoapClient();

create event handler for method to access web service

ser.GetLoginRequestCompleted += new EventHandler<GetLoginRequestCompletedEventArgs>(proxy_getloginrequest);
    ser.GetLoginRequestAsync(strLogin, strPass, Program.VersionNumber, "WM1", "test", "WP7");

Event Handle for method

 void proxy_getloginrequest(object sender, GetLoginRequestCompletedEventArgs e)
   string eee = e.Result;
is there any way to access webservice without call event handler?
Please help me


how to convert a byte[] to a xsd:hexBinary in the WSDL generated of a WCF service


Hi, i always see a byte[] type in the contract gets converted into a base64Binary type. What should i do in my WCF service contract so that the date type in the WSDL comes out to hexBinary ?

Will appreciate your help.


ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend