VS2008调用VS2012的WCF服务的方式和遇到的问题
1 用添加服务引用的懒方式
2 用http请求方式
3 客户端自己定义一个Contract,跟服务端的一样(可以只写要使用的方法,不用全部写完)。
由于规范要求,前两种都不能用,后面根据同事的描述,产生的第三种方式。(差点我们就升版本了,好震撼的举动,降版本不是一个好的办法)
但是命名空间+类名必须跟服务端的一样,这是为什么呢?因为要根据这个去找地址。
为什么方法名也必须有呢?
因为这实际上是代理的方式在调用。
4 遇到的问题
开发阶段都没有遇到什么问题,以为一切OK,结果提测不过?
一直报:类型“***********”在未被引用的程序集中定义。必须添加对程序集“****************”的引用。
我以为是dll不匹配的问题,丢了很多次dll,还是不过。
我注意看了一下,发现不管我怎么丢dll,更改的dll都有一大片,于是我重新牵了一个分支,只丢我要丢的dll。
还是提测编译不过。
我已经把服务器上的代码拿出来看,是编译不过,但是我把dll丢进行之后又对了。
我又想到一招,把服务器上的dll,考到本地,再把变更dll丢进去,提测,好吧.....还是不过。
最后一招,找管理提测的同学!
但同时,我就在想这个Contract,跟我这个服务的Contract有什么不同呢?我把新增Contract的所有 类似这种标注[OperationContract]全部对比一遍,发现是对的。最后我就想实在不行,我就把新增的Contract拷贝到原有服务Contract的项目下面,引用共同的东西,肯定没有问题,这一引用,我就发现问题了。一个是引用:****************.WCF;,另一个是引用:******************.Wcf;我去,居然能编译通过,而且我本地测试这么久竟然完全没有问题!
把引用的命名空间改一下,对了!
5 思考
按照常理来讲,如果说本地能编译通过,那么提测过去的代码也能编译通过,但是结果没有,原因是两份代码引用dll部分根本不一样,那么这就涉及到提测的时候dll收集的问题!有空把源代码拉下来看看!另外一个问题是,怎么两个dll中有同样的东西,这个也可以看看!
VS2008调用VS2012的WCF服务的方式和遇到的问题的更多相关文章
- 搭建一个BS 的简单SOA 架构(直接通过jquery 调用后台的 wcf 服务的架构)(第一天)
亲们!还在用传统的三层架构吗?你还在对SOA架构 不了解吗? 那就赶快来学习下一个 比较简单的SOA的架构吧!我会手把手的 教会你们怎么搭建这个 简单的SOA的架构. 其中用的技术点保证 WCF,a ...
- 动态调用webservice及WCF服务
动态调用web服务,该方法只针对Web service, WCF的服务不行,如果是WCF的就通过工具直接生产代理类,把代理类配置到调用的项目中,通过配置客户端的终结点动态的取实现: 通过Svcutil ...
- Fiddler捕捉ASP.NET WebSite调用WebService、WCF服务
Fiddler默认会注册一个代理,有时会发现WebSite调用的WebService或者WCF服务无法被捕捉到.其实是由于运行的站点关联的应用程序池使用的账号和我们当前登陆操作系统的用户不同,自然它们 ...
- 调用WCF服务的几种方式
首先发布了一个名为PersonService的WCF服务.服务契约如下: [ServiceContract] public interface IPersonService { ...
- SharePoint 2013 调用WCF服务简单示例
内容比较简单,主要记录自己使用SharePoint 2013WCF服务遇到的小问题和小经验,分享给大家,希望能够给需要的人有所帮助.好吧,进入正题! 第一部分 SharePoint 2013调用自带W ...
- WCF开发实战系列四:使用Windows服务发布WCF服务
WCF开发实战系列四:使用Windows服务发布WCF服务 (原创:灰灰虫的家http://hi.baidu.com/grayworm) 上一篇文章中我们通过编写的控制台程序或WinForm程序来为本 ...
- WCF服务端开发和客户端引用小结
1.服务端开发 1.1 WCF服务创建方式 创建一个WCF服务,总是会创建一个服务接口和一个服务接口实现.通常根据服务宿主的不同,有两种创建方式. (1)创建WCF应用程序 通过创建WCF服务应用程序 ...
- WCF开发实战系列三:自运行WCF服务
WCF开发实战系列三:自运行WCF服务 (原创:灰灰虫的家 http://hi.baidu.com/grayworm)上一篇文章中我们建立了一个WCF服务站点,为WCF服务库运行提供WEB支持,我们把 ...
- 完全使用接口方式调用WCF 服务
客户端调用WCF服务可以通过添加服务引用的方式添加,这种方式使用起来比较简单,适合小项目使用.服务端与服务端的耦合较深,而且添加服务引用的方式生成一大堆臃肿的文件.本例探讨一种使用接口的方式使用WCF ...
随机推荐
- Open Asset Import Library(assimp) vs2010编译
Assimp(Open Asset Import Library)是一个开源的3D模型导入解析库, 可以处理很多种3D文件格式:Collada, Blend, Obj, X, 3DS, LWO, MD ...
- Java面向对象设计主要有三大特征:封装性、继承性和多态性
Java面向对象设计主要有三大特征:封装性.继承性和多态性 一 封装性 1.1 概念:它是将类的一些敏感信息隐藏在类的类部,不让外界直接访问到,但是可以通过getter/setter方法间接访 ...
- 使用vigil 监控微服务系统包含可视化界面
1. 安装 a. rust cargo cargo install vigil-server b. docker docker pull valeriansaliou/vigil:v1.3.0 2. ...
- Hadoop MapReduce 操作 统计词频
1.准备文件并设置编码格式为UTF-8并上传Linux 2.新建一个Java Project 3.导入jar 4.编写Map()和Reduce() 5.将代码输出成jar 6.在linux中启动hdf ...
- 关于CSS单位:rem vh vw vmin vmax
rem(root em) 如果你给body设置了font-size字体大小,那么body的任何子元素的1em就是等于body设置的font-size demo: body { font-size: ...
- Linux 文件名中包含特殊字符
文件和文件夹的名称中有特殊字符,操作有两种方式( - 在文件名称最前面除外). 例如:文件名为 a&b.c 1.通过转移符 "\" $ touch a\&b.c ...
- java代码--------构造方法的调用
总结: package com.sads; //构造方法何时被调用, //构造方法里的内容先执行 public class Sdw { static { System.out.println(&quo ...
- 软件官网与memcached介绍
常见官网 http://www.keepalived.org http://nginx.org/ documentation 模块说明 http://www.apache.org/ https://o ...
- 模拟admin组件自己开发stark组件之自定义list_display,反向解析url
反向解析 在上一篇文章中,我们创建好了stark这个组件,一个应用一个表有四个默认的url,那么我们如何区别这些url,因为可能会有重复现象(本组件不会,因为前面拼接了应用名,表明,肯定唯一),概念请 ...
- 在使用Ajax请求返回json数据的时候IE浏览器弹出下载保存对话框的解决方法
在使用Ajax请求返回json数据的时候IE浏览器弹出下载保存对话框的解决方法 最近在做一个小东西,使用kindeditor上传图片的时候,自己写了一个上传的方法,按照协议规则通过ajax返回json ...