WCF实例应用

通过上篇文章对WCF做了一个简短的介绍,下面就做一个小例子来熟悉如何构建和应用一个WCF应用。

1.添加WCF服务:

2.打开刚才新建的服务接口IShowMyName,在其中添加方法(注意不要将服务标签丢掉,否则访问不到):

3.添加实现服务的方法:

4.在浏览器中查看如下图所示表示成功:

5.在IIS中对其进行发布,这样服务端就配置好了。

6.客户端的配置,首先要进行配置文件的添加:

(1) 配置好web.config

<configuration>

<system.web>

<compilation debug="true" targetFramework="4.0" />

</system.web>

<system.serviceModel>

<behaviors>

<serviceBehaviors>

<behavior name="">

<serviceMetadata httpGetEnabled="true" />

<serviceDebug includeExceptionDetailInFaults="false" />

</behavior>

</serviceBehaviors>

</behaviors>

<serviceHostingEnvironment  multipleSiteBindingsEnabled="true" />

<bindings>

<basicHttpBinding>

<binding name="BasicHttpBinding_Default"

closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00"

sendTimeout="00:01:00" allowCookies="false" bypassProxyOnLocal="false"

hostNameComparisonMode="StrongWildcard" maxBufferSize="65536"

maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text"

textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true">

<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"

maxBytesPerRead="4096" maxNameTableCharCount="16384" />

<security mode="None">

<transport clientCredentialType="None" proxyCredentialType="None"

realm="" />

<message clientCredentialType="UserName" algorithmSuite="Default" />

</security>

</binding>

</basicHttpBinding>

</bindings>

<client>

<endpoint

address="http://localhost:8080/WCFService/ShowMyName.svc?wsdl"

binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_Default"

contract="Contracts.IShowMyName"

name="BasicHttpBinding_IShowMyName" />

</client>

</system.serviceModel>

</configuration>

(2) 客户端调用服务

在客户端中添加引用:

using System.ServiceModel.Channels;

using System.ServiceModel;

后就可以添加代码,调用WCF的服务了:

//因为服务是通过通道工厂创建的,故在此需要先实例化通道工厂

ChannelFactory<IShowMyName> factory = new ChannelFactory<IShowMyName>
("BasicHttpBinding_IShowMyName");

IShowMyName myobject = factory.CreateChannel();

//调用服务的方法

string time = myobject.showName(this.txtName.Text);

时间: 2024-10-17 12:16:42

WCF实例应用的相关文章

Android 调用WCF实例详解

Android 调用WCF实例 1. 构建服务端程序 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 using System.ServiceModel; namespace yournamespace {   [ServiceContract(Name = "HelloService", Namespace = "http://www.master.haku")]   public interface IHello   {     [Operati

WCF入门(九)--WCF实例管理

这组由Windows通讯基础(WCF)结合一组消息(客户端请求)服务实例所采用的技术被称为实例管理.一个完全由三种类型实例激活支持WCF,它们如下所述. 1.每个调用服务 每次调用服务是Windows通讯基础的默认实例激活模式.当一个WCF服务配置为每个调用服务,一个CLR对象是时间跨度客户调用或请求进行创建. CLR代表公共语言运行库,并在WCF服务实例. 在每个调用服务,每一个客户端请求实现专用消耗相同的内存并且新的服务实例较少,相较于其他类型的实例激活.必需有InstanceContext

WCF实例上下文与并发

一.实例上下文模式(InstanceContextMode)可以简单地理解为服务端的服务实例与客户端的服务代理之间的关联方式.WCF具有单调(Per-Call).会话(Per-Session).和单例(Single) 单调(Per-Call) [ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)] public class TestService : ITest 会话(Per-Session) [ServiceBe

JQuery Ajax调用WCF实例以及遇到的问题

1.遇到的最多的问题就是跨域问题,这个时间需要我们添加如下代码解决跨域的问题 第一步:在服务类加Attribute [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] 第二步:在构造函数中添加 if (WebOperationContext.Current != null) { WebOperationContext.Current.OutgoingRe

WCF实例上下文模式与并发模式对性能的影响

实例上下文模式 InstanceContextMode 控制在响应客户端调用时,如何分配服务实例.InstanceContextMode 可以设置为以下值: •Single – 为所有客户端调用分配一个服务实例. •PerCall – 为每个客户端调用分配一个服务实例. •PerSession – 为每个客户端会话分配一个服务实例. InstanceContextMode 的默认设置为 PerSession 并发模式ConcurrencyMode 控制一次允许多少个线程进入服务.Concurre

WCF服务类的实例模式(本文为转载)

WCF开发时如何选择正确的实例模式(InstanceMode)? 在使用WCF实例模型时,你是否思考过这几个的问题: ”WCF中的实例模式如何正确应用”? ”使用WCF中的实例模式有何原则可以遵循吗”? 众所周知:客户端调用服务时,最终会将调用服务端的某个实例来完成.在WCF服务中,可以通过ServiceBehavior的InstanceContextMode设置服务实例. InstanceContextMode定义如下: // 摘要:     //     指定可用来处理包含在传入消息中的调用

WCF并发控制与实例模式

WCF实例模式类型与区别 实例化模式 instanceMode percall        单调模式 [ServiceBehavior(InstanceContextMode=InstanceContextMode.PerCall)] persession  会话模式 [ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession)] singleTon   单例模式 [ServiceBehavior(InstanceCo

跟我一起学WCF(8)——WCF中Session、实例管理详解

一.引言 由前面几篇博文我们知道,WCF是微软基于SOA建立的一套在分布式环境中各个相对独立的应用进行交流(Communication)的框架,它实现了最新的基于WS-*规范.按照SOA的原则,相对独自的业务逻辑以Service的形式进行封装,调用者通过消息(Messaging)的方式来调用服务.对于承载某个业务功能实现的服务应该具有上下文(Context)无关性,意思就是说构造服务的操作(Operation)不应该绑定到具体的调用上下文,对于任何的调用,具有什么的样输入就会对应怎样的输出.因为

C# 一个WCF简单实例

C# 一个WCF简单实例 作者: 字体:[增加 减小] 类型:转载 时间:2012-10-27我要评论 以订票为例简单应用wcf程序,需要的朋友可以参考下 WCF实例(带步骤) 复制代码代码如下: <xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" /> 本篇转自百度文档,自己试过,确实可以用. 以订票为例简单应用wcf 新建一个wcf服务应用程序 在IServi