我们目前从Silverlight客户端设置 WCF RIA服务链接,我目前正在寻找配置文件来更改某些wcf设置。这可能吗?
答案 0 :(得分:0)
您需要向服务端点添加适当的设置和行为。
以下是增加maxItemsInObjectGraph:
的端点行为示例<endpointBehaviors>
<behavior name="ClientMaxItemsInObjectGraphBehavior">
<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
</behavior>
</endpointBehaviors>
在端点中使用behaviorConfiguration=
引用它,如下所示:
<endpoint contract="AssemblyName.IContactName"
address="http://localhost:50101/MyService.svc"
behaviorConfiguration="ClientMaxItemsInObjectGraphBehavior"
binding="wsHttpBinding"
bindingConfiguration="WSHttpBinding_Default"
name="MyServiceEndpoint">
</endpoint>
大多数其他设置与bindingConfiguration=
引用的服务绑定有关,例如:
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="WSHttpBinding_Default"
maxBufferPoolSize="2147483647"
maxReceivedMessageSize="2147483647"
<readerQuotas maxDepth="32"
maxStringContentLength="2147483647"
maxArrayLength="16384"
maxBytesPerRead="4096"
maxNameTableCharCount="16384" />
</binding>
研究匹配的类和属性可能比配置文件更容易。配置变得非常快,但它们只是在运行时反映了属性的层次结构,因此从类文档向后工作可以帮助您了解各种设置的位置。