Подтвердить что ты не робот

VS2010, служба WCF не запускается

Я рассмотрю, что я сделал до сих пор шаг за шагом, как показано ниже:

  • создано пустое решение
  • добавлен веб-сайт WCFService
  • удалили службу и IService с веб-сайта
  • добавлен проект библиотеки WCF в решение
  • добавлены конечные точки в web.config
  • сделал то же самое в app.config
  • добавлена ​​ссылка на библиотеку сервисов в веб-приложении.
  • ctrl + F5 9

Я получаю следующую ошибку:

Ошибка сервера в '/WFLedger' Заявка. Тип 'Services.WFLedger.WF_Ledger', в качестве атрибута службы значение в директиве ServiceHost, или предусмотренный в конфигурационном элементе system.serviceModel/serviceHostingEnvironment/serviceActivations невозможно найти. Описание: необработанное исключение произошло во время выполнение текущей сети запрос. Просмотрите трассировку стека для получения дополнительной информации об ошибке и где он возник в коде.

Сведения об исключении:

System.InvalidOperationException: тип 'Services.WFLedger.WF_API_Ledger', в качестве атрибута службы значение в директиве ServiceHost, или предусмотренный в конфигурационном элементе system.serviceModel/serviceHostingEnvironment/serviceActivations не удалось найти.

Ошибка источника:

Создано необработанное исключение во время выполнения текущего веб-запрос. Информация о происхождение и местоположение исключения могут быть идентифицированы с использованием исключения трассировка стека ниже.

Трассировка стека:

[InvalidOperationException: тип 'Services.WFLedger.WF_Ledger', в качестве атрибута службы значение в директиве ServiceHost, или предусмотренный в конфигурационном элементе system.serviceModel/serviceHostingEnvironment/serviceActivations не удалось найти.]
System.ServiceModel.Activation.ServiceHostFactory.CreateServiceHost(String constructorString, Uri [] baseAddresses) +654
System.ServiceModel.HostingManager.CreateService(String normalizedVirtualPath) +1439
System.ServiceModel.HostingManager.ActivateService(String normalizedVirtualPath) +45
System.ServiceModel.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath) +647

[ServiceActivationException: service '/WFLedger/WF_Ledger.svc' не может быть активирована из-за исключение во время компиляции. сообщение об исключении: Тип 'Services.WFAPILedger.WF_API_Ledger', в качестве атрибута службы значение в директиве ServiceHost, или предусмотренный в конфигурационном элементе system.serviceModel/serviceHostingEnvironment/serviceActivations не удалось найти..]
System.Runtime.AsyncResult.End(IAsyncResult результат) +437
System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult результат) +188
System.ServiceModel.Activation.HostedHttpRequestAsyncResult.ExecuteSynchronous(HttpApplication контекст, строка routeServiceVirtualPath, Boolean flowContext, Boolean обеспечиваетWFSсервис) +230 System.ServiceModel.Activation.HttpModule.ProcessRequest(объект отправитель, EventArgs e) +360
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +213 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean & completedSynchronously) +76

Это действительно сводит меня с ума!!! почему я получаю эту ошибку? если вам нужна дополнительная информация, пожалуйста, дайте мне знать, чтобы я предоставлял их вам благодаря миллиону заранее

4b9b3361

Ответ 1

Посмотрите файл WF_Ledger.svc в своем проекте веб-сайта. Он должен состоять только из одной строки. Будет атрибут Service, содержащий "Services.WFAPILedger.WF_API_Ledger". WCF ищет класс "Services.WFAPILedger.WF_API_Ledger", но не находит его. Пространство имен и имя класса должны либо существовать в проекте веб-сайта, либо быть ссылкой, поскольку вы пытаетесь настроить. Вам нужно будет отредактировать этот атрибут Service, чтобы он соответствовал классу реализации службы в проекте библиотеки WCF.

Ответ 2

Пожалуйста, проверьте, предоставлен ли файл .svc и имеет следующую форму.

 <% @ServiceHost Language=C# Debug="true" Service="MyService" CodeBehind="~/App_Code/Service.cs" %>

Вся его одна строка и файл не должны содержать ничего.

Ответ 3

Попробуйте добавить новый сервис по умолчанию, а затем проверьте, что новые добавленные работы прекрасны. Если да, проверьте предоставленное имя контракта конечной точки web.config, и в файле .svc проверить код за указанным правильно.

Ответ 4

В файле .svc параметр службы должен включать пространство имен, за которым следует имя класса i.e, оно должно быть в формате mynamespace.myservice

Ответ 5

Создайте проект WCF и повторите попытку. Эта ошибка может возникнуть из-за отсутствия DLL в папке bin.

Для меня создание и попытка снова разрешили его.

Ответ 6

Даже убедитесь, что в вашей директиве .svc файла значение атрибута "service" - это полное имя класса, то есть пример: если ваше пространство имен похоже на "ns1.ns2.ns3.ClassName" (где ns1, ns2, ns3 - пространства имен).