由无法调试WCF引发的一些故事

简介:

Silverlight调用WCF,无法跟进WCF代码,用WCF测试器测试后发现传输字符太长。

百度了一下,加上

<readerQuotas maxDepth="32" maxStringContentLength="2147483647" 
           maxArrayLength="16384" maxBytesPerRead="2147483647" maxNameTableCharCount="16384" />

 

这样的配置,本以为问题解决,但是发现依然如故。

一高手前来相助,调试很久,发现没有配置另外两个节点。摘贴如下。

一是需要这样的节点

<system.serviceModel> 
  <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="false"/> 
  <behaviors> 
    <serviceBehaviors> 
      <behavior name="Import"> 
        <serviceMetadata httpGetEnabled="true"/> 
        <serviceDebug includeExceptionDetailInFaults="false"/> 
        <dataContractSerializer maxItemsInObjectGraph="2147483647"/> 
      </behavior> 
……

……

……

<services> 
       <service behaviorConfiguration="Import" name="Import"> 
        <endpoint address="" bindingConfiguration="ImportSoap" binding="basicHttpBinding" contract="Import"/> 
      </service> 
  </services>

 

这两个节点的意义不是很明白,MSDN了一下:

<behaviors>

此节定义名为 endpointBehaviors 和 serviceBehaviors 的两个子集合。每个集合分别定义终结点和服务所使用的行为元素。每个行为元素由其唯一的 name 特性标识。

架构层次结构

<system.serviceModel>

语法 
<behaviors> 
   <serviceBehaviors> 
   </serviceBehaviors> 
   <endpointBehaviors> 
   </endpointBehaviors> 
</behaviors>

http://msdn.microsoft.com/zh-cn/site/ms731303

<service>

service 元素包含 Windows Communication Foundation (WCF) 服务的设置。它还包含公开此服务的终结点。

架构层次结构

<system.serviceModel> 
<services> 
<service>

语法 
<service behaviorConfiguration=String" 
        name="String" 
&lt;/service>

属性和元素

以下几节描述了属性、子元和父元素。 
说明

behaviorConfiguration

一个字符串,其中包含要用于实例化服务的行为的行为名。定义服务时,该行为名必须在作用域内。默认值为空字符串。

name

必需的字符串属性,此属性指定要进行实例化的服务的类型。此设置必须等同于一个有效类型。格式应为 Namespace.Class.

子元素

说明

<endpoint> 元素

公开此服务的 endpoint 元素的集合。

<host>

指定此服务实例的主机。此元素的类型为 HostElement。

父元素

说明

<services>

所有 WCF 配置元素的根元素。

备注

服务是在配置文件的 services 节中定义的。程序集可以包含任意多个服务。每个服务都有自己的 service 配置节。本节及其内容定义特定服务的服务协定、行为和终结点。

behaviorConfiguration 元素也是可选的。它标识服务使用的行为。在此属性中指定的行为必须链接到同一配置文件中的作用域内的行为。

每个服务都将公开一个或多个终结点,每个终结点具有自己的地址和绑定。配置文件中使用的所有绑定都必须在该文件的范围内定义。绑定通过 name 和bindingConfiguration 属性的组合链接到终结点。name 属性描述在其中定义绑定的节。bindingConfiguration 属性定义所使用的绑定节中的配置。绑定节可以定义若干个配置。

















本文转自cnn23711151CTO博客,原文链接: http://blog.51cto.com/cnn237111/748835如需转载请自行联系原作者


相关文章
|
5月前
|
Docker 容器
Docker run命令-p参数详解
本文介绍Docker端口映射的基础用法。通过`docker run -p &lt;宿主机端口&gt;:&lt;容器端口&gt;`实现端口映射,例如`-p 5000:80`将宿主机5000端口映射到容器80端口,外部访问宿主机5000端口时流量会转发至容器内部的80端口。示例命令中,`-d`用于后台运行,`--restart=always`确保容器自动重启,`--name`指定容器名称。部署完成后可通过`http://服务器IP地址:5000`验证服务是否正常运行。
|
17天前
|
存储 弹性计算 人工智能
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
2025年9月24日,阿里云弹性计算团队多位产品、技术专家及服务器团队技术专家共同在【2025云栖大会】现场带来了《通用计算产品发布与行业实践》的专场论坛,本论坛聚焦弹性计算多款通用算力产品发布。同时,ECS云服务器安全能力、资源售卖模式、计算AI助手等用户体验关键环节也宣布升级,让用云更简单、更智能。海尔三翼鸟云服务负责人刘建锋先生作为特邀嘉宾,莅临现场分享了关于阿里云ECS g9i推动AIoT平台的场景落地实践。
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
|
9天前
|
云安全 人工智能 安全
Dify平台集成阿里云AI安全护栏,构建AI Runtime安全防线
阿里云 AI 安全护栏加入Dify平台,打造可信赖的 AI
|
12天前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
1051 34
|
11天前
|
机器学习/深度学习 人工智能 搜索推荐
万字长文深度解析最新Deep Research技术:前沿架构、核心技术与未来展望
近期发生了什么自 2025 年 2 月 OpenAI 正式发布Deep Research以来,深度研究/深度搜索(Deep Research / Deep Search)正在成为信息检索与知识工作的全新范式:系统以多步推理驱动大规模联网检索、跨源证据。
814 56
|
9天前
|
文字识别 测试技术 开发者
Qwen3-VL新成员 2B、32B来啦!更适合开发者体质
Qwen3-VL家族重磅推出2B与32B双版本,轻量高效与超强推理兼备,一模型通吃多模态与纯文本任务!
706 11