将WCF服务添加到子文件夹中
我创建了一个新的WCF4Web应用程序,并添加了一个新的wcf服务。 我创建了一个子文件夹,并将创建的服务移动到该子文件夹中 e、 g 我已将该服务部署到我的IIS7环境中,但我一直收到此错误 类型 'MyNameSpace.WebWCF.Business.V1', 作为服务属性提供 ServiceHost指令中的值,或 在配置元素中提供 system.serviceModel/serviceHostingEnvironment/serviceActivations 找不到 我的服务文件如下所示将WCF服务添加到子文件夹中,wcf,Wcf,我创建了一个新的WCF4Web应用程序,并添加了一个新的wcf服务。 我创建了一个子文件夹,并将创建的服务移动到该子文件夹中 e、 g 我已将该服务部署到我的IIS7环境中,但我一直收到此错误 类型 'MyNameSpace.WebWCF.Business.V1', 作为服务属性提供 ServiceHost指令中的值,或 在配置元素中提供 system.serviceModel/serviceHostingEnvironment/serviceActivations 找不到 我的服务文件如下所示
<%@ ServiceHost Language="C#" Debug="true"
Service="MyNameSpace.WebWCF.BusinessV1" CodeBehind="BusinessV1.svc.cs" %>
我的合同看起来像
namespace MyNameSpace.WebWCF
{
public class BusinessV1 : IBusinessV1
{
}
}
namespace MyNameSpace.WebWCF
{
[ServiceContract]
public interface IBusinessV1
}
最后是我的web.config
<system.serviceModel>
<services>
<service name="MyNameSpace.WebWCF.Business_v1">
<endpoint
address="http://mydomain.com/Business/v1/BusinessV1.svc"
binding="basicHttpBinding"
bindingConfiguration=""
contract="MyNameSpace.WebWCF/IBusinessV1"
listenUri="/" isSystemEndpoint="true" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
有人能帮我解决我做错了什么吗?这让我发疯。两个问题希望能有所帮助: 1:您确定移动后合同仍然与Web服务对应吗 和/或
第二:您是否更新了web服务(从项目列表中web服务条目的上下文菜单;atm。我没有更具体的VS)。有一点是:您的服务名称不一致 在服务实现类中,您有:
namespace MyNameSpace.WebWCF
{
public class BusinessV1
在*.svc
文件中,您有相同的限定名称:
Service="MyNameSpace.WebWCF.BusinessV1"
但在web.config
中,您使用:
<service name="MyNameSpace.WebWCF.Business_v1">
使用MyNameSpace.WebWCF.BusinessV1
代替MyNameSpace.WebWCF.Business\u v1
如果该名称不匹配,WCF运行时将找不到您指定的配置,并将返回到系统默认值。我不知道如何测试第一点。在本地,它工作正常,但在部署失败后。使用wcftest客户端也会失败
<service name="MyNameSpace.WebWCF.Business_v1">
<service name="MyNameSpace.WebWCF.BusinessV1">