C# 尝试通过HTTP访问服务时出现TCP错误
我有一个名为“HelloWorldService”的类库类型项目,它具有以下接口:C# 尝试通过HTTP访问服务时出现TCP错误,c#,asp.net,.net,wcf,C#,Asp.net,.net,Wcf,我有一个名为“HelloWorldService”的类库类型项目,它具有以下接口: namespace HelloWorldService { [ServiceContract] public interface IHelloWorldService { [OperationContract] string GetMessage(string message); } } 这门课: namespace HelloWorldServi
namespace HelloWorldService
{
[ServiceContract]
public interface IHelloWorldService
{
[OperationContract]
string GetMessage(string message);
}
}
这门课:
namespace HelloWorldService
{
public class HelloWorldService : IHelloWorldService
{
public string GetMessage(string message)
{
return message;
}
}
}
我在解决方案中创建了一个网站,并在其中导入了“HelloWorldService”的引用。
因此,该网站(称为HelloWorldLocal)只有一个带有“HelloWorldService.dll”、“HelloWorldService.pdb”的bin文件夹,在bin文件夹外有一个web.config文件:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5.2" />
<httpRuntime targetFramework="4.5.2" />
</system.web>
<system.serviceModel>
<serviceHostingEnvironment>
<serviceActivations>
<add factory="System.ServiceModel.Activation.ServiceHostFactory"
relativeAddress="./HelloWorldLocal/HelloWorldLocal.svc" service="HelloWorldService.HelloWorldService"/>
</serviceActivations>
</serviceHostingEnvironment>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
想法
谢谢。试着换下一行
<add factory="System.ServiceModel.Activation.ServiceHostFactory"
relativeAddress="./HelloWorldLocal/HelloWorldLocal.svc" service="HelloWorldService.HelloWorldService"/>
到
打开IIS管理器,单击网站上的右键,然后选择管理应用程序>高级设置,我已经解决了问题 然后在打开的窗口中,有一个“enabledprotocols”属性,只有http。我添加了“net.tcp”,它成功了
不知道为什么,但它做到了。您需要补充的一点是,它做到了,但没有任何改变:/
<add factory="System.ServiceModel.Activation.ServiceHostFactory"
relativeAddress="./HelloWorldLocal/HelloWorldLocal.svc" service="HelloWorldService.HelloWorldService"/>
<add factory="System.ServiceModel.Activation.ServiceHostFactory"
relativeAddress="HelloWorldLocal.svc" service="HelloWorldService.HelloWorldService"/>