Click here to Skip to main content
15,944,397 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi All,
I am a beginner in WCF, So please help me out. There is no IIS installed on my system.
So using Asp.net Web Development server.

This is my MathService.Svc file
XML
<%@ ServiceHost Language="C#" Debug="true" Service="MathService" CodeBehind="~/App_Code/MathService.cs" %>

IMathService.cs  file which is the interface code
[ServiceContract]
public interface IMathService
{
    [OperationContract]
    int Add(int a, int b);

}

This is my MathService.cs code
XML
public class Service : IMathService
{

    public int Add(int a, int b)
    {
        return a + b;
    }
}

When i try to add this service to a console application, i get the below error
<br />
The type 'MathService', provided as the Service attribute value in the ServiceHost directive could not be found.<br />
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.<br />
Exception Details: System.InvalidOperationException: The type 'MathService', provided as the Service attribute value in the ServiceHost directive could not be found.


In the Web.config file I have changed the config file as
XML
<system.serviceModel>
        <services>
            <service name="MathService" behaviorConfiguration="ServiceBehavior">
                <!-- Service Endpoints -->
                <endpoint address="" binding="wsHttpBinding" contract="IMathService">
                    <!--
              Upon deployment, the following identity element should be removed or replaced to reflect the
              identity under which the deployed service runs.  If removed, WCF will infer an appropriate identity
              automatically.
          -->
                    <identity>
                        <dns value="localhost"/>
                    </identity>
                </endpoint>
                <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
            </service>
        </services>
        <behaviors>
            <serviceBehaviors>
                <behavior name="ServiceBehavior">
                    <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
                    <serviceMetadata httpGetEnabled="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="false"/>
                </behavior>
            </serviceBehaviors>
        </behaviors>
    </system.serviceModel>

Please let me know what is this error popping up.
I am using .Net framework 3.5 and VS 2010.

When i try to run the Default service i.e. Service.Svc it works fine.
Posted
v3

Check the namespaces for IService and Service.cs . Both should match

also in the contract value, add your namespace. servicecontract

like
XML
<endpoint address="" binding="wsHttpBinding" contract="namespace.IMathService"></endpoint>
 
Share this answer
 
v2
yea Error is in client application server is absolutly correct check concumption again
 
Share this answer
 
have added the service reference to your console application?
you need to add it by selecting add reference option from solution explorer and u should import the reference to ur console application..

Let me knw if any confusions!!!
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900