自己动手实现的wcf示例,像我一样的新手可以下载示例看一下,demo在本篇最后有下载链接。下面说明一下解决方案里的几个工程:
1、 公共 WcfContract 类库 定义wcf服务契约,通常是一个接口
2、 wcf服务端
a、MyWcfLib 类库 需要引用System.ServiceModel,WcfContract ,它具体实现了WcfContract 中接口的所有方法。
b、MyWcfWebHost web工程 需要引用System.ServiceModel,WcfContract 和MyWcfLib wcf的web宿主 便于对外调用
c、MyWcfWinHost winform工程 需要引用System.ServiceModel,WcfContract 和MyWcfLib wcf的winform宿主 用来启动wcf服务,然后外部即可调用打开的服务
注意:在实际项目中,b和c可能任选一个即可,这里全部给出示例完全是用来学习和参考。
3、 客户端
MyClient 控制台应用程序 System.ServiceModel和两个服务引用。
注意:这里的“客户端”指的是调用wcf服务的诸如web窗体项目,win窗体项目等等,示例给的是简单的控制台应用程序。
接着看两个配置文件:
a、MyWcfWebHost 工程下GetData文件夹下的web.config:
b、MyWcfWinHost 工程下的app.config :
Demo下载: WcfStudyDemo
1、 公共 WcfContract 类库 定义wcf服务契约,通常是一个接口
2、 wcf服务端
a、MyWcfLib 类库 需要引用System.ServiceModel,WcfContract ,它具体实现了WcfContract 中接口的所有方法。
b、MyWcfWebHost web工程 需要引用System.ServiceModel,WcfContract 和MyWcfLib wcf的web宿主 便于对外调用
c、MyWcfWinHost winform工程 需要引用System.ServiceModel,WcfContract 和MyWcfLib wcf的winform宿主 用来启动wcf服务,然后外部即可调用打开的服务
注意:在实际项目中,b和c可能任选一个即可,这里全部给出示例完全是用来学习和参考。
3、 客户端
MyClient 控制台应用程序 System.ServiceModel和两个服务引用。
注意:这里的“客户端”指的是调用wcf服务的诸如web窗体项目,win窗体项目等等,示例给的是简单的控制台应用程序。
接着看两个配置文件:
a、MyWcfWebHost 工程下GetData文件夹下的web.config:
Code
注释写的很清楚,注意类库名称和
contract
="WcfContract.IGetDataService",
不是太难,知道配置的含义就行了。b、MyWcfWinHost 工程下的app.config :
Code
注意:“<serviceDebug includeExceptionDetailInFaults="True" />”这一行是对于wcf服务异常的一个配置,默认是“false”,这里是为了调试看到异常而设置为true的,在部署的时候千万要设置为“false”。Demo下载: WcfStudyDemo
本文转自JeffWong博客园博客,原文链接:http://www.cnblogs.com/jeffwongishandsome/archive/2009/08/15/1541426.html,如需转载请自行联系原作者