axnst2
asked on
Simple WCF web service and yet I get the infamous "The webpage cannot be found"
Hi Experts,
I need to create just a simple WCF web service. I tried setting everything up using countless tutorials online and yet every time I go to "Right click on XXXX.svc -> View In Browser", I get the "The webpage cannot be found" message in IE.
Example tutorial that I followed to a T (other than naming): http://www.c-sharpcorner.com/UploadFile/013102/creating-wcf-service-iis-hosting-and-consuming/
Environment: Windows 8.1, VS2012, .NET 4.5, IIS 8.5, IE 11
Service.svc:
Web Config:
I have tried every suggestion that I can find online and nothing seems to make a difference. I have tried 4 different tutorials (though they all tell me to do the exact same thing), and I always end up with the same exact issue. Please help!!!!
I need to create just a simple WCF web service. I tried setting everything up using countless tutorials online and yet every time I go to "Right click on XXXX.svc -> View In Browser", I get the "The webpage cannot be found" message in IE.
Example tutorial that I followed to a T (other than naming): http://www.c-sharpcorner.com/UploadFile/013102/creating-wcf-service-iis-hosting-and-consuming/
Environment: Windows 8.1, VS2012, .NET 4.5, IIS 8.5, IE 11
Service.svc:
<%@ ServiceHost Language="C#" Debug="true" Service="MyProject.Service"%>
Web Config:
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true"/>
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.5"/>
<httpRuntime targetFramework="4.5"/>
</system.web>
<system.serviceModel>
<services>
<service name="MyProject.Service">
<endpoint address="" binding="wsHttpBinding" contract="MyProject.IService">
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information, set the values below to false before deployment -->
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<add binding="basicHttpsBinding" scheme="https"/>
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true"/>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<!--
To browse web app root directory during debugging, set the value below to true.
Set to false before deployment to avoid disclosing web app folder information.
-->
<directoryBrowse enabled="true"/>
</system.webServer>
</configuration>
I have tried every suggestion that I can find online and nothing seems to make a difference. I have tried 4 different tutorials (though they all tell me to do the exact same thing), and I always end up with the same exact issue. Please help!!!!
Goto the debug menu, select exceptions and then select break on "Common Language Exception" and run it again, you might be actually getting a 500 internal server error. Also check the title of your IE window, it may give more of an idea of what is wrong.
ASKER
Wabbit, it only takes 2 minutes to run through the tutorial I referenced above, are you able to reproduce the problem on your end?
Open the IIS Manager console and verify that website exists and files are deployed correctly.
ASKER
ASKER
Any other ideas? This definitely has something to do with the hosting end of things. If I add a test app to the solution and ad a reference to the WCF library, I have no issues. I only have issues if it's hosted in IIS
ASKER
ASKER
Details shows this:
There was an error downloading 'http://localhost/InvoiceImagePortal/Service.svc/_vti_bin/ListData.svc/$metadata'.
The request failed with HTTP status 400: Bad Request.
Metadata contains a reference that cannot be resolved: 'http://localhost/InvoiceImagePortal/Service.svc'.
Content Type application/soap+xml; charset=utf-8 was not supported by service http://localhost/InvoiceImagePortal/Service.svc. The client and service bindings may be mismatched.
The remote server returned an error: (415) Cannot process the message because the content type 'application/soap+xml; charset=utf-8' was not the expected type 'text/xml; charset=utf-8'..
If the service is defined in the current solution, try building the solution and adding the service reference again.
ASKER
The entire application works fine as long as it's not hosted in IIS
The identity that is used for the application pool that hosts the WCF service must have full NTFS permissions on the %WINDIR%\temp folder.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Walter, how do I check "The identity that is used for the application pool"
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.