资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

vb.net怎么搞wcf VBNET教程

net iis6.0怎么配置wcf服务

在.NET 3.5中,我们需要这样做:

成都创新互联自2013年创立以来,先为阿巴嘎等服务建站,阿巴嘎等地企业,进行企业商务咨询服务。为阿巴嘎企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

1. 添加一个HelloService.svc文件,添加ServiceHost标记,在Service中添加WCF服务实现的名称,比如:

%@ ServiceHost Language="C#" Debug="false" Service="CNBlogs.Service.Impl.HelloService"%

2. 在web.config/system.serviceModel/bindings/basicHttpBinding中添加一个binding。

3. 在web.config/system.serviceModel/behaviors/serviceBehaviors中添加一个behavior。

4. 在web.config/system.serviceModel/services中添加一个service,并且:

a) 设置behaviorConfiguration属性。

b) 设置name属性。

5. 在service下添加一个endpoint,并且:

a) 设置binding属性。

b) 设置name属性。

c) 设置contract属性。

在.NET 4中,我们只要这样做:

在web.config/system.serviceModel/serviceHostingEnvironment/serviceActivations中增加下面两个属性即可:

add relativeAddress="HelloService.svc" service="CNBlogs.Service.Impl.HelloService"/

这样配置后,就可以正常调用WCF服务。

如果需要通过SvcUtil.exe生成客户端代理,只需在serviceBehaviors中添加:

behavior

serviceMetadata httpGetEnabled="true"/

/behavior

如何:安装和配置 WCF 激活组件

下面的部分略述此配置的步骤:安装(或确认安装)WCF 激活组件。配置WAS 以支持非 HTTP 协议。下面的过程对 Windows Vista 进行 TCP 激活配置。在安装和配置 WAS 之后,请参见 如何:在 WAS 中承载 WCF 服务 以了解创建公开使用 WAS 的非 HTTP 终结点的 WCF 服务的过程。安装WCF 非 HTTP 激活组件单击“开始”按钮,再单击“控制面板”。单击“程序”,再单击“程序和功能”。在“任务”菜单上,单击“打开或关闭 Windows 功能”。查找.NET Framework 3.0 节点,选中该节点然后将其展开。选中“WCF 非 HTTP 激活组件”框并保存设置。配置WAS 以支持 TCP 激活若要支持 net.tcp 激活,必须首先将默认的网站绑定到一个 net.tcp 端口。可以通过使用随 IIS 7.0 管理工具集安装的 Appcmd.exe 来执行此操作。在管理员级别命令提示符窗口中,运行以下命令。

如何配置net.tcp 的WCF服务

首先让我们来开始编写服务器端,服务器端用的是Console Application。

由于我们的软件是一个能够通过学生ID来获取学生姓名的小程序,所以,首先必须得有一个StudentInfo实体类:

在这个实体类中,DataContract代表数据契约,DataMeber代表数据成员,加上这些Attribute后,能够传送给Client端。

然后是一个接口,这个接口定义了服务契约和操作契约:

然后是具体的实现方法:

这个方法里,我们有两个函数,一个能够根据学生点获取学生全名,另一个是根据学生点获取学生的实体对象。

好了,让我们来编译这个项目,得到一个WCFServiceGeneratedByConfig.exe文件。

然后,我们需要配置文件来让服务器端启动,所以这里我们要用WCF Service Configuration Editor

工具来进行,由于在VS2008 和VS2010中带有这个软件,我们可以直接通过菜单-Tools-WCF Service Configuration Editor来打开。

首先,点击File-New config, 打开Service的Configuration界面。

然后,点击Create a new service…,在弹出的界面中,我们选择刚才生成的那个WCFServiceGeneratedByConfig.exe文件。双击之后,软件自动显示出了里面含有的Service:

点选那个Service,然后点击两次next,我们会看到出现了选择Communation Mode的界面,这里由于我们用的是net.tcp,所以我选择了第一个:TCP。

然后点击Next,我们会看到要我们填写EndPoint,这里我随便填写了一个:

之后,点击Next知道Finish,然后,我们的最基本的配置就结束了。

回到Config界面之后,我们点击Advanced-Service Behaviors-New Service Behavior Configuration,在弹出的界面中,我们点击Add-serviceMetadata:

然后点击Add,我们就添加了一个Behavior Element。点击刚刚生成的serviceMetadata节点,在显示的界面中,设置HttpGetEnabled为true。

然后点击原来的Service节点下的Host节点,在Base Address栏目下单击Add,添加如下的Base Address:

最后点击OK。然后点击菜单File-Save As 保存到项目文件夹下即可。

这里是生成的代码:

这一步做完后,我们需要让服务能够启动,怎么启动呢?请看下面的代码:

代码中的注释部分非常重要,我们一定要添加,否则下面的步骤不能进行,具体的原因,参加我的另一篇文章:在net.tcp模式下,由SvcUtil.exe生成代理类文件和配置文件

然后运行这个ConsoleApplication。

接下来,找到SvcUtil.exe,C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe,在CMD窗口下运行如下命令:

C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcUtil.exe net.tcp://127.0.0.1:50001/StudentServiceEndPoint

这样,这个小工具就会自动的给我们生成代理类和配置文件

Microsoft (R) Service Model Metadata Tool

[Microsoft (R) Windows (R) Communication Foundation,版本 3.0.4506.2152]

版权所有(c) Microsoft Corporation。保留所有权利。

正在尝试使用 WS-Metadata Exchange 从“net.tcp://127.0.0.1:50001/StudentServiceEndPoint”下载元数据。此 URL 不支持 DISCO。

正在生成文件...

E:\WCF\WCF_ChatRoom\StudentService.cs

E:\WCF\WCF_ChatRoom\output.config

请按任意键继续. . .

接下来,新建一个WindowsFormsApplication程序,将这个代理类拷入,配置文件修改名称为App.config拷入,

然后在Form1.cs中拖入一个文本框,一个按钮,一个DataGridView,后台代码如下:

启动这个实例,输入学生ID,我们成功得到了服务端返回的值。

那么能不能在公网上使用呢?呵呵,这个当然,将服务端拷贝到外网的一台机器上,然后修改服务器端的配置文件中的地址为:net.tcp://169.*.*.124:50001/ StudentServiceEndPoint,然后将本机的配置文件中的地址也修改为这个,最后运行,依然能够得到返回的结果。

VB.NET Silverlight 怎么调用WCF 最简单的 Function Getstr(ByVal str As String) As String

1、你待将服务器端的服务Function Getstr(ByVal str As String) As String开启;

2、客户端Silverlight要调用服务,必须解决跨域问题;

3、客户端silverlight调用服务必须是异步调用,因为silverlight不支持同步调用


网页标题:vb.net怎么搞wcf VBNET教程
文章URL:http://cdkjz.cn/article/hpdipd.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220