tags:

views:

661

answers:

2

I havea WCF service which I publish from Visual Studio 2008 to an IIS 6. According to the output window of VS, the publish succeeded, no error messages or warnings. When I look at IIS, the virtual directory was created, but there is no .svc listed in the directory. The directory just has my web.config and a bin. Any attempts to call my WCF service fail cause they don't exist. How can I see an error message of what's going wrong? By trial-and-error, I discovered changing my app.config before publishing will make the service show up. Namely my app.config file has these lines: <binding ...> <security mode="Transport"> <transport clientCreditionalType="None"/> </security> </binding>

If I switch "Transport" to "None", then my service shows up on IIS. But I do have a certificate installed on IIS on the server, and as far as I can tell, everything is configured correctly on the server.

There is no error message in the event log.

How can I get a find more error messages about why the service is failing to show up?

A: 

To find out more turn on the wcf logging. The easiest way to do this is to use the wcf configuration tool.

Edit based on your comment: The way we publish a service is to create an msi package using the setup project. There are a couple of outputs that need to be included:

  1. Primary output (that is dll's) must go to the bin directory.
  2. Content output. You must create the svc files and mark them as content.
Shiraz Bhaiji
No good -- WCF logging only applies when the service is run. I'm not even getting to that point -- I'm stuck on publishing.
tavistmorph
A: 

Try to copy your WCF project to your machine with IIS 6.0 as is, without using Publish of VS. If it helps, then the problem is within VS, otherwise the problem is with the IIS. Make sure .NET Framework 3.5 and ASP.NET are installed on the IIS machine. Then make sure that there are Mapping Handlers for .svc extension.

Hope it helped

Boris Modylevsky