1
我已经提供了一个代码库,其中一个WCF服务托管在IIS中。该项目使用开发服务器,但这并不重要。 web.config文件只包含服务配置的以下部分:默认情况下,WCF服务如何连接到端点?
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
.svc文件包含以下内容:
<%@ ServiceHost Language="C#" Debug="true" Service="TestApp.MySvcClass" CodeBehind="MySvcClass.svc.cs" %>
MySvcClass实现合约(ISvcContract)。 问题是,在.NET 4下,此配置有效。没有任何声明在合同和服务类型之间建立链接,没有任何将行为链接到服务类型,没有终点声明,但它工作。 对于.net 3.5,它没有。它抱怨配置。
WCF服务项目配置的默认行为是什么? 它在哪里记录? 我可以强制这些类型的设置失败吗?
我没有时间测试,但如果我添加另一个svc文件,该项目可能会变得疯狂,因为事情可能会奇迹般地落入一个服务的位置,但我宁愿没有配置处理一个聪明的方式。