I have a .NET, WCF web service (created in PowerBuilder 12.5.1) hosted on an IIS 7.5 server which has a method call that takes an integer, and then makes a call to a MS SQL Server 2008 R2 database. Using Microsoft Network Monitor 3.4 I can see that my client makes an HTTP request to the IIS server, which sometimes sends an HTTP 100 response and sometimes doesn’t (has never been an issue, and in this case I don’t care), then the client makes a SOAP request to the server that has the details for the service call. However, the IIS server just sends back an HTTP 200 response, instead of making the SQL call like its supposed to. There is no indication that the service is even attempting to make a connection to the SQL database. Both the IIS site and application that the service is hosted on are using the PBDotnet4AppPool, which is using integrated managed pipeline mode and the NetworkService Identity. The application has a connection string that can be used to connect to the SQL database with a user id that has read access to all the tables on the database.
How can I fix this so that the service makes the SQL call and returns the proper response? Any help is greatly appreciated.
PS: I’m new at this, please be patient and let me know if there is some other information I should have included.
It turns out the whole thing was a .dll file issue with Powerbuilder. When a powerbuilder web service can’t find .dll files it needs it tends to just silently crash and not tell you why. To solve this problem I copied the contents of “C:\Program Files (x86)\Sybase\Shared\PowerBuilder” from my development computer (running Windows 7) to the same folder on the IIS server. After I did this both the console “self-hosted” application service on the IIS server and the IIS hosted service worked fine.