cangfriend

   :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

这里我不写WCF怎么写代码的,网上有好多入门和提高的教程,我写的是怎么用,或者说我用到了WCF的什么。

刚开始写的时候,因为是为了Delphi开发而写的,所以算是一个远程函数调用,和COM+没有什么本质区别。就是在服务器上发布一个或多个函数,在客户端调用远程的函数,返回执行结果,当然包括数据集。1.我可以发布成网站形式的,和WebService差不多。单是开发起来,比WebService要可快速和简便,这是当时给我的感觉。这种发布方式没有正式应用的项目中。2.可以发布成一半exe可执行程式。这种发布方式当时给我的感觉很是惊艳。后来这种方式一至被我作为调试时的发布方式。3.可以注册成Windows系统服务,我学习这种方式的初衷是因为可以开机启动,不用登陆进系统。现在是我的WCF正式发布的方式。

因为最初的开发目的是为了Delphi可以调用,所以“远程函数调用”这种开发方式一致应用了好久,知道转到.netwinform开发,才转变了这种思想。

Delphi7是不支持直接调用WCF,生成WSDL中间语言的,我有到Delphi官方网站,找到最新的更新包WSDLImp.exe,和调用WCF的简介,当时还没有中文资料,因为Delphi7不能直接用可视化界面生成WSDL,只能用命令行调用,我还专门写了一个工具,省去了命令行的麻烦。其实Delphi已经更新到2005啦,可是我对Delphi7之后的所有版本都不敢兴趣,因为7之后的版本多是学习NET的IDE开发界面的,用着很不习惯,所以到现在,如果用到Delphi还是Delphi7,哈哈。在Win7出来后,才下的Delphi2010,因为Win7不支持Delphi7啦。

在讲些WCF初级应用所用到的发布方式。

1. 是IIS发布,和网站差不多,我问什么没用呢?、

还是因为Delphi调用的问题。Delphi生成WSDL后,只能识别IP地址的WSDL格式,不能识别 电脑名的WSDL格式,用IIS发布后,Delphi调用,中间一个地址一直是电脑名,不能转换成IP地址,所以才用到了exe发布和系统服务发布,因为她们都是用IP地址发布的,不会有电脑名的问题。虽然很久后找到了解决电脑名问题的方法,可是用系统服务发布挺好的,再也没有用IIS发布过WCF。

2. Exe可执行文件发布。只是在学习和调试的时候用。

3. 系统服务发布。在不用IIS发布这种方式后,我也没有打算用可执行文件发布作为正式的系统来用,因为考虑到开机登录问题,决定用系统服务来作为正式的发布。这三种方法几乎是同时学习的,因为在WCF的入门知识中就介绍啦。哈哈

4. 系统服务的应用。按照教程写的,WCF发布只能算是系统服务的一个简单应用,中间只要注意系统服务的名字就好啦,不是WCF服务的名字。因为默认的都是“Service1”,要改成自己用到的名字。只是在VS2010出来后,才有遇到了一个严重问题。在.Net3.5/.Net3.5SP1时,注册系统服务,都是用的.Net2.0的东西,到.Net4.0后才是用的.Net4.0的注册程序。.Net3.5写的只能用.Net2.0的注册程序,同样.Net4.0写的只能用.Net4.0的注册程序。不能混着用。

5. 在高级应用篇再介绍用到的 系统服务的日志排查WCF问题。

posted on 2010-10-25 19:47  BruceZhou  阅读(1225)  评论(0编辑  收藏  举报