[转]VS2010中如何创建一个WCF
本文转自:http://www.cnblogs.com/zhangliangzlee/archive/2012/08/28/2659701.html
转载:http://www.cnblogs.com/thankyou555/archive/2012/02/25/2368029.html
最近才真正接触WCF,实在惭愧,在网上和园子里找很多例子,但发现并没有VS2010创建最新的WCF项目示例,也是最简单的一种方式。做个记录,与新手共享。(本机VS2010为中文版)步骤:
1. 新建项目-WCF-WCF服务应用程序,会有自带服务示例IService1.cs 和Service1.svc。目录结构如下:

然后选择该项目右健,点击生成(切记:项目一定要生成)。然后发布服务,将服务部署在IIS上(该示例以IIS作为宿主),方法和部署正常的网站程序完全一样。然后即可浏览该服务,要记住服务地址,下面会用到,例我的部署地址为:http://localhost/wmlwcf/service1.svc。
但应该注意:IIS中选择添加应用程序,不要选择虚拟目录。效果:

看到如上的页面,说明服务已部署成功。
2. 创建客户端程序:新建项目-Windows-Windows窗体应用程序, 选中项目下“引用”点击鼠标右键,选择“添加服务引用”,弹出“添加服务引用”对话框,地址栏输入刚发布服务地址,我部署地址为:http://localhost/wmlwcf/service1.svc
但应该注意:IIS中选择添加应用程序,不要选择虚拟目录。
会自动找到该解决方案下所有的服务,此时找到刚刚建立的Service1.svc服务。选中服务后,点击确定。

项目中即生成如下服务ServiceRefrence1:

4. 在Windows窗体应用程序下,打开Form1窗体,添加一个按钮,在按钮事件里添加如下代码:
ServiceReference1.Service1Client client = new ServiceReference1.Service1Client(); string str = client.GetData(100); //100:客户端传给服务端的值,str:服务端传给客户端的值
MessageBox.Show(str);
5. 将Windows窗体应用程序作为解决方案的启动项目,然后F5运行,即可。
至此OK,一个WCF示例完成。WCF服务即发布和运行,且可被客户端进行调用。
[转]VS2010中如何创建一个WCF的更多相关文章
- VS2010中使用Jquery调用Wcf服务读取数据库记录
VS2010中使用Jquery调用Wcf服务读取数据库记录 开发环境:Window Servere 2008 +SQL SERVE 2008 R2+ IIS7 +VS2010+Jquery1.3.2 ...
- Ionic 2 中的创建一个闪视卡片组件
闪视卡片是记忆信息的重要工具,它的使用可以追溯到19世纪.我们将要创建一个很酷的短暂动画来实现它.看起来像是这个样子的: 闪视卡片示例 Ionic 2 实例开发 新增章节将为你介绍如何在Ionic 2 ...
- unity编辑器扩展_03(在组件中右击创建一个选项,并通过该选项修改该组件下面的字段的值)
在组件中右击创建一个选项代码: [MenuItem("CONTEXT/PlayerHealth/InitHealth")] static void Test5() { ...
- 【转载】 C#中手动创建一个DataTable对象并写入数据
在C#操作集合数据的过程中,有时候需要手动创建一个DataTable对象,并手动设置DataTable对象的Columns列名等信息,最后再往手动创建的DataTable对象中写入相应的数据信息,此时 ...
- Step by Step 创建一个WCF Service
原创地址:http://www.cnblogs.com/jfzhu/p/4025448.html 转载请注明出处 (一)创建WCF Service (1)创建WCF Service类库 创建一个Cla ...
- C# 创建一个WCF服务
做代码统计,方便以后使用: app.config配置文件设置: <configuration> <system.serviceModel> <bindings> & ...
- php 中如何创建一个空对象
// 创建一个空对象 $obj=(object)array(); //假设这是从数据库取内容 $arr=["prod_id"=>103,"prod_name&quo ...
- PHP中怎样创建一个空对象?
如果没有声明一个对象然后就对其属性赋值会出现警告.那么我们给它创建一个空对象然后赋值就好了.PHP中创建一个空对象代码如下: 第一种方式: $empty_object = new stdClass() ...
- cocos3.2中如何创建一个场景
1.可以将一些比较通用的东西放到Common.h中,这是一个.h文件,必须手动添加,且保证在classes目录里 #ifndef __COMMON_H__ #define __COMMON_H__ # ...
随机推荐
- JavaScript学习笔记-面向对象的模块化编程
面向对象的模块化编程 模块是一个独立的JS文件,模块文件可以包含一个类定义.一组相关的类.一个实用函数库.一些待执行的代码 模块化的目标:支持大规模的程序开发,处理分散源代码的组装,并能让代码正确执行 ...
- 带你秒学JavaScript
JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理.是静态网页转变为动态的 ...
- .NET破解之图片下载器
自去年五月加入吾爱后,学习了三个月,对逆向破解产生了深厚的兴趣,尤其是对.NET方面的分析:但由于这一年,项目比较忙,事情比较多,破解这方面又停滞了许久,不知道还要好久. 前些天,帮忙批量下载QQ相册 ...
- Python将Excel生成SHP
#!/usr/bin/env python # -*- coding: utf-8 -*- import gdal import xlrd import shapefile # open the ex ...
- ubuntu环境变量
在Ubuntu中有如下几个文件可以设置环境变量1./etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.2. ...
- filezilla sftp 文件和linux 文件不同步的问题
删除掉以前的链接,重新建立链接就好了
- spring.net (1) 概念-控制反转(又名依赖注入)
Spring.net 作为一个应用程序框架,在构建企业级.net应用程序提供了很多灵活而又丰富的功能(如:依赖注入,aop,数据访问抽象,asp.net 扩展). 控制反转: Inversion of ...
- 【代码笔记】iOS-背景色随机显示
一,效果图. 二,工程图. 三,代码. RootViewController.h RootViewController.m - (void)viewDidLoad { [super viewDidLo ...
- socket编程listen函数限制连接数的解决方案
函数原型: int listen(int sockfd, int backlog); 当服务器编程时,经常需要限制客户端的连接个数,下面为问题分析以及解决办法: 下面只讨论TCP UDP不做讨论(很 ...
- iOS之 Xcode7下 bitcode的工作流程及安全评估
文章参考来自http://www.freebuf.com/articles/others-articles/89806.html 很多朋友在升级Xcode7以后原有正常运行的工程在Xcode7下编译会 ...