我正在尝试部署我在Visual Studio中创建的wcf服务。 我几乎肯定是wcf服务配置或IIS本身的配置问题。
我在服务中使用的配置如下:
<system.webServer>
<directoryBrowse enabled="true" />
</system.webServer>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="CandidateServiceBehavior">
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceThrottling maxConcurrentCalls="500" maxConcurrentSessions="500" maxConcurrentInstances="500" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service name="SurveyService.SurveyService" behaviorConfiguration="CandidateServiceBehavior">
<endpoint address="/Survey/SurveyService" binding="netTcpBinding" name="CandidateServiceEndPoint" contract="Prometric.Census.SurveyService.ISurveyService" />
<endpoint address="/Survey/SurveyService/mex" binding="mexTcpBinding" contract="IMetadataExchange" />
</service>
</services>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="false" />
</system.serviceModel>
我从visual Studio部署了一次服务,并在IIS上指向了一个新站点,其中以下设置指向部署文件夹
然后在IIS中,您可以看到该网站处于未知状态:
从这里开始,我无法连接到服务或查找是否正在运行。我已经尝试了命令/ an:find / i“9015”并没有发现任何内容,所以我认为该服务甚至没有运行。
如果我在哪里更改WCF服务和IIS上的绑定以使用http,则一切正常。 (应该说使用http不是一个选项)
此外,除了没有启动和运行服务之外,我不确定如何将服务作为TCP进行测试,我是否可以像使用http sefvice一样添加服务引用?你可以看到我对tcp方面的新手很新,如果我遗漏了任何重要信息,请告诉我,以便我可以在问题中加入。
答案 0 :(得分:1)
这可能会对您有所帮助:
https://rohitguptablog.wordpress.com/2011/06/16/configuring-wcf-service-with-nettcpbinding/
我按照本指南制作了net.tcp wcf服务,顺利进行。此外,您确定您的文件夹具有所需的权限吗?使用wwwroot / inetpub
之外的其他文件夹可能会很棘手