i'm following tutorial on setting wcf service. finished changes talks about, first time says start service. when navigating endpoint in web browser either 404 or 403.14 error. service showing folder structure, removed attribute in web.config file enabling that. i'm sure issue related file, i'm not sure else change. link guide: http://www.c-sharpcorner.com/uploadfile/dhananjaycoder/four-steps-to-create-first-wcf-service-for-beginners/
web.config file:
<?xml version="1.0"?> <configuration> <appsettings> <add key="aspnet:usetaskfriendlysynchronizationcontext" value="true"/> </appsettings> <system.web> <compilation debug="true" targetframework="4.5.2"/> <httpruntime targetframework="4.5.2"/> <httpmodules> <add name="applicationinsightswebtracking" type="microsoft.applicationinsights.web.applicationinsightshttpmodule, microsoft.ai.web"/> </httpmodules> </system.web> <system.servicemodel> <services> <service name="wcfcalculator.calculator" behaviorconfiguration="metadata"> <endpoint address="" contract="wcfcalculator.icalculator" binding="basichttpbinding"/> <endpoint name="mex" address="mex" contract="imetadataexchange" binding="mexhttpbinding"/> </service> </services> <behaviors> <servicebehaviors> <behavior name="metadata"> <servicemetadata httpgetenabled="true"/> </behavior> <behavior> <!-- avoid disclosing metadata information, set values below false before deployment --> <servicemetadata httpgetenabled="true" httpsgetenabled="true"/> <!-- receive exception details in faults debugging purposes, set value below true. set false before deployment 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"> <remove name="applicationinsightswebtracking"/> <add name="applicationinsightswebtracking" type="microsoft.applicationinsights.web.applicationinsightshttpmodule, microsoft.ai.web" precondition="managedhandler"/> </modules> <!-- browse web app root directory during debugging, set value below true. set false before deployment avoid disclosing web app folder information. --> <validation validateintegratedmodeconfiguration="false"/> </system.webserver> </configuration>
service contract:
using system.servicemodel; namespace wcfcalculator { [servicecontract] public interface icalculator { [operationcontract] double addnumbers(double number1, double number2); [operationcontract] double substractnumbers(double number1, double number2); [operationcontract] double multiplynumbers(double number1, double number2); [operationcontract] double divisionnumbers(double number1, double number2); } }
i think 403.14 may related folder permissions. account application pool running under , version of .net framework? make sure you're app pool targeting framework 4.0. 403.14 - you're trying browse root directory , directory browsing disabled in iis or app pool doesn't have enough permissions. than, try removing protocolmapping.
in vs2015 can set .svc file start document. hitting "f5" open document in wcf test client (wcftestclient.exe). alternatively, can right-click .svc file , select "view in browser".