一:在本机直接运行时出错

使用WCF写了一个小程序测试一下它的功能在运行时报错。“添加服务失败。服务元数据可能无法访问。请确保服务正在运行并且正在公开元数据。”

如下图所示:

查了下资料把它解决了,记录一下。

解决方法:

将web.config中的

<serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true"/>

修改为

<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />

即可。

二:发布到IIS出错

2.1 IIS7  不支持svc的MIME类型

解决方案

开始->所有程序->附件->CMD->右键“用管理员方式”打开,进入以下目录C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\,

,执行ServiceModelReg.exe -i  即可。

2.2 HTTP 错误 500.21 - Internal Server Error  处理程序“svc-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

原因:

vs2010默认的是4.0框架,4.0的框架是独立的CLR,和2.0的不同,如果想运行4.0的网站,需要用aspnet_regiis注册4.0框架,然后用4.0的Class池,就可以运行4.0的web项目了.

如何用aspnet_regiis注册4.0框架 :

方法如下,启动cmd (win键+R 启动cmd) ,找到 4.0所在的目录,本人机器目录是 ;

注意:要以管理员的身份运行DOS窗口。

复制目录 C:\Windows\Microsoft.NET\Framework\v4.0.30319

运行 aspnet_regiis.exe -i

安装完成,这时的IIS就可以运行 .net 4.0 部署的网站了.

2.3

这是 Windows© Communication Foundation 服务。

当前已禁用此服务的元数据发布。

如果具有该服务的访问权限,则可以通过完成下列步骤来修改 Web 或应用程序配置文件以便启用元数据发布:

解决方法

web.config中的serviceBehaviors节点下的behavior 节点的name属性设为空字符串

 <system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="">
<!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 -->
<serviceMetadata httpGetEnabled="true"/>
<!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>

2.4

“/”应用程序中的服务器错误。


未能从程序集“System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”中加载类型“System.ServiceModel.Activation.HttpModule”。

解决方案:

在命令提示符CMD(管理员方式运行CMD)上打开地址 C:\Windows\Microsoft.NET\Framework\v4.0.30319 然后输入aspnet_regiis.exe -iru 后回车即可,参考下图

2.5

“/”应用程序中的服务器错误。


无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性。请在 web.config 中关闭 ASP.NET 兼容性模式,或将 AspNetCompatibilityRequirements 特性添加到服务类型且同时将 RequirementsMode 设置为“Allowed”或“Required”。

解决方法:

将web.config中的

<serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true"/>

修改为

<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />

即可。

三:Service References 和 Web References、BasicHttpBinding和WsHttpBinding的不同点

Web References: 主要是添加Web Service引用,基于.NET Framework 2.0。

Service References:为了对.NET Framework 3.0 或 3.5版本上WCF Service Library的支持。

BasicHttpBinding:数据明文的通过xml发送

WsHttpBinding:数据被加密发送

假如,WCF的绑定方法是WSHttpBinding,那么,如果使用Web References来引用这个WCF服务中话,会不成功,只能用Service References方式引用才会成功;

假如,WCF的绑定方法是BasicHttpBinding,那么,无论使用Web References还是Service References都可以成功调用。

 

WCF发布错误及解决方案的更多相关文章

  1. wcf 上传文件报413,404和发布错误

    上传文件错误: 其实要修改所有的服务,不管是服务端还是客户端,Binding那边增加一个没有设置名字的默认配置就OK了:  <binding   closeTimeout="00:10 ...

  2. webapi发布常见错误及解决方案

    webapi发布常见错误及解决方案 错误一: 错误:404 (Not Found) 解决方案: 在  <system.webServer>节点中添加如下模块: <modules ru ...

  3. WCF 发布使用

    WCF发布,由于使用的是 net.tcp协议因此 需要在发布的WCF站点的管理网站-高级设置,连接协议中添加net.tcp的绑定 然后还需要在网站绑定编辑中添加net.tcp的绑定.否则访问的时候会出 ...

  4. 安装360后,visual studio 经常报各种莫名其妙的错误的解决方案

    安装360后,visual studio  经常报各种莫名其妙的错误,每次都要查找错误的解决方案 而且网上关于这个的好少,以后只要碰到了这种情况我就记录下吧 今天碰到的情况是打开WCF服务时出现   ...

  5. Umbraco项目发布错误 --More than one type want to be a model for content type authorize

    在开发项目时,解决方案下面包括三个项目 MyUmbracoProject MyUmbracoProject.Core MyUmbracoProject.FrontEnd 第一个项目MyUmbracoP ...

  6. 创建或打开解决方案时提示"DotNetCore.1.0.1-SDK.1.0.0.Preview2-003131-x86"错误的解决方案

    提示"DotNetCore.1.0.1-SDK.1.0.0.Preview2-003131-x86"错误的解决方案: 1.检查是否有C:\Program Files (x86)\d ...

  7. 针对每种Windows Server 操作Excel、Word等Office组件遇到“ComException"、”80070005“等COM错误的解决方案大汇总

    以下所有Excel错误的解决方案,同样适用于Word.PowerPoint等Office产品. 以下解决方案中,如果出现"安装Excel组件",是适用于遇到Excel错误的.如果是 ...

  8. SQL Server附加数据库时报1813错误的解决方案

    SQL Server附加数据库时报1813错误的解决方案   无法打开新数据库 'ASR'.CREATE DATABASE 中止. 文件激活失败.物理文件名称'E:\SqlServer\MSSQL\D ...

  9. 关于Oracle出现listener refused the connection with the ORA-12505错误,解决方案

    出现listener refused the connection with the ORA-12505错误,解决方案: 1.首先重启一下电脑,释放被占用的1521端口 2.重启后打开Oracle D ...

随机推荐

  1. POJ 3348 Cows

    题目大意: 给你n棵树,可以用这n棵树围一个圈,然后在圈里面可以养牛,每个牛需要50平方米的空间,问最多可以养多少牛? 其实就是求一个凸包,计算凸包面积,然后除以50,然后就得到答案,直接上模板了. ...

  2. 传统的MVC模式

    对于MVC模式,我们可以将可视化UI呈现,UI处理逻辑和业务逻辑分别定义在View,Controller,和Model中. 可视化UI呈现->View UI处理逻辑->Controller ...

  3. EditPlus配置C环境

    一, 目标 1, 编译 ---- 根据编写的 .c 文件, 生成 .exe 文件 2, 运行 ---- 运行 生成的 .exe文件 3, 清理 ---- 删除 生成的 .exe文件 二, 环境 1,  ...

  4. hdu 1809 求SG函数

    A New Tetris Game(2) Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  5. struts2对ognl表达式的使用(配图解加讲解)

    ognl它是一个功能强大的表达式语言,用来获取和设置Java对象的属性,它旨在提供一个更高的更抽象的层次来对Java对象图进行导航. 先看一张示意图 如果是下面的除了第一种valueStack的下面几 ...

  6. DataOutputStream的writeBytes(String s)

    最近,在关于网络请求中有用到DataOutputStraem中的writeBytes()方法,然而就是这个问题,导致了传输中文时就出现问题,着实困扰了很长一段时间. 后来,服务器端同事建议我使用Dat ...

  7. Js 获取当前月的天数

    function getDays() { //构造当前日期对象 var date = new Date(); //获取年份 var year = date.getFullYear(); //获取当前月 ...

  8. 有关css3的一些问题

    CSS3新特性(阴影.动画.渐变.变形.伪元素等) CSS3与页面布局学习总结--CSS3新特性(阴影.动画.渐变.变形.伪元素等)     目录 一.阴影 1.1.文字阴影 1.2.盒子阴影 二.背 ...

  9. MemoryStream和FileStream

    一,FileStream对象的数据来自文件,而MemoryStream对象的数据来自内存缓冲区.这两个类都继承自Stream类. 二,抽象基类System.IO.Stream代表流,它提供Read和W ...

  10. trove最新命令简单分类解析

    usage: trove [--version] [--debug] [--service-type <service-type>] [--service-name <service ...