The type 'RestService.weddingservice', provided as the Service attribute value in the ServiceHost directive could not be found

13,977

Solution 1

Set the

<serviceDebug includeExceptionDetailInFaults="false" />

to

<serviceDebug includeExceptionDetailInFaults="true" />

in order to get more details

and try to run the process again

Solution 2

I reconfigured my project recently and ran into this error.

It was a setup error, my service DLLs weren't being placed in the right directory when publishing the website.

Share:
13,977

Related videos on Youtube

Adam
Author by

Adam

Updated on June 04, 2022

Comments

  • Adam
    Adam almost 2 years

    Im trying to create my first WCF restful service. In VS2010 I open weddingservice.svc and then hit F5. A browser opens to http://localhost:50043/weddingservice.svc But there, this is the error I get:

    Server Error in '/' Application.
    
    The type 'RestService.weddingservice', provided as the Service attribute value in the ServiceHost directive, or provided in the configuration element system.serviceModel/serviceHostingEnvironment/serviceActivations could not be found.
    
    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. 
    
    Exception Details: System.InvalidOperationException: The type 'RestService.weddingservice', provided as the Service attribute value in the ServiceHost directive, or provided in the configuration element system.serviceModel/serviceHostingEnvironment/serviceActivations could not be found.
    
    Source Error: 
    
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    
    Stack Trace: 
    
    
    [InvalidOperationException: The type 'RestService.weddingservice', provided as the Service attribute value in the ServiceHost directive, or provided in the configuration element system.serviceModel/serviceHostingEnvironment/serviceActivations could not be found.]
       System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses) +51530
       System.ServiceModel.HostingManager.CreateService(String normalizedVirtualPath) +1461
       System.ServiceModel.HostingManager.ActivateService(String normalizedVirtualPath) +44
       System.ServiceModel.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath) +651
    
    [ServiceActivationException: The service '/weddingservice.svc' cannot be activated due to an exception during compilation.  The exception message is: The type 'RestService.weddingservice', provided as the Service attribute value in the ServiceHost directive, or provided in the configuration element system.serviceModel/serviceHostingEnvironment/serviceActivations could not be found..]
       System.Runtime.AsyncResult.End(IAsyncResult result) +688590
       System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result) +190
       System.ServiceModel.Activation.HostedHttpRequestAsyncResult.ExecuteSynchronous(HttpApplication context, String routeServiceVirtualPath, Boolean flowContext, Boolean ensureWFService) +234
       System.ServiceModel.Activation.HttpModule.ProcessRequest(Object sender, EventArgs e) +359
       System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +148
       System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
    
    Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272
    

    Below my code, I hope anyone is able to see what Im doing wrong. Am I not using the correct URI? What did I miss?

    weddingservice.svc

    <%@ ServiceHost Language="VB" Debug="true" Service="RestService.weddingservice" CodeBehind="weddingservice.svc.vb" %>
    

    Iweddingservice.vb

    Imports System.ServiceModel
    Imports System.Web
    Imports System.IO
    Imports System.Runtime.Remoting.Activation
    Imports System.Collections.Generic
    
    Namespace RestService
    <ServiceContract()>
    Public Interface Iweddingservice
    
        <OperationContract()> _
    <Web.WebGet(UriTemplate:="job/{name}")> _
        Function DoJob(name As String) As String
    
    End Interface
    End Namespace
    

    weddingservice.svc.vb

    Imports System.ServiceModel
    Imports System.ServiceModel.Web
    Imports System.IO
    Imports System.ServiceModel.Activation
    Imports System.Web.Script.Serialization
    Imports System.Collections.Generic
    Imports System.Xml
    Imports System.Net
    
    Namespace RestService
        Public Class weddingservice
            Implements Iweddingservice
    
            Public Function DoJob(name As String) As String Implements Iweddingservice.DoJob
                Return String.Format("Hello, {0}", name)
            End Function
        End Class
    End Namespace
    

    web.config

    <system.serviceModel>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
      <services>
        <service name="weddingservice">
          <endpoint binding="webHttpBinding" contract="RestService.Iweddingservice" behaviorConfiguration="webHttp"/>
        </service>
      </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
        <behavior name="webHttp">
          <webHttp/>
        </behavior>
      </endpointBehaviors>
    </behaviors>
    </system.serviceModel>  
    
  • Adam
    Adam about 12 years
    I did what you said and I've updated the error...hope you can see something new :)
  • CSharpenter
    CSharpenter about 12 years
    1. Click on the Tools menu, then click on the "WCF Service Configuration Editor". 2. After the editor opens, close it. 3. now right click on the Web.config file, and choose "Edit WCF Configuration" 4. Under the Services folder, choose the weddingservice, and on the right pane click on the value of the Name property. 5. Press on the ... button, and then navigate to Bin directory and double click you assembly dll. 6. once the assembly is chosen, select (2* click) the class that implements the Iweddingservice interface (weddingservice class) 7. Once selected, choose File | Save, and try
  • Adam
    Adam about 12 years
    That helped! I had to add a namespace BEFORE the RestService namespace! It now works! Great! Thanks!
  • Nelson Rothermel
    Nelson Rothermel about 10 years
    Which folder path did you add it to?