1. 打开上一个项目
2. 修改Program.cs, 注意注释掉的绿色部分,因为我们使用配置文件公布EndPoint
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using JackWangWCFService;
using System.ServiceModel;
namespace JackWangServiceHost
{
class Program
{
static void Main(string[] args)
{
using (ServiceHost host=new ServiceHost(typeof(JackWangWCFService.Calc)))
{
//host.AddServiceEndpoint(typeof(JackWangWCFService.ICalc),
// new NetTcpBinding(), "net.tcp://localhost:9000/Add");
host.Open();
Console.Out.WriteLine("calc web service started at:"+DateTime.Now.ToString());
Console.ReadLine();
}
}
}
}
3.添加一个App.Config文件,注意Service 的name是实现服务的类,客户端访问的地址是http://localhost:9000/Add
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<services>
<service name="JackWangWCFService.Calc" behaviorConfiguration="serviceBehavior">
<endpoint binding="basicHttpBinding" contract="JackWangWCFService.ICalc" address="Add"></endpoint>
<host>
<baseAddresses>
<add baseAddress="http://localhost:9000"/>
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="serviceBehavior">
<serviceMetadata httpGetEnabled="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
4.修改客户端的代码,注意这次使用的是http的传输方式
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
namespace JackWangServiceClient
{
[ServiceContract]
public interface ICalc
{
[OperationContract]
long Add(int a, int b);
}
class Program
{
static void Main(string[] args)
{
ICalc proxy = ChannelFactory<ICalc>.CreateChannel(new BasicHttpBinding(),
new EndpointAddress("http://localhost:9000/Add"));
long result = proxy.Add(50, 60);
Console.Out.WriteLine("result from server is:" + result);
Console.ReadLine();
}
}
}
分享到:
相关推荐
3. **配置服务**: 使用配置文件(app.config或web.config)或代码来指定服务地址、绑定和终结点。 4. **启动服务**: 使用`ServiceHost`类启动服务,监听请求。 5. **创建客户端**: 使用`ChannelFactory`或`svcutil...
通常,WCF使用配置文件(如app.config)来定义服务的行为、绑定、终结点等设置。然而,有时为了简化部署或特定需求,我们可能需要不依赖配置文件来实现双工通信。本篇文章将深入探讨如何在没有配置文件的情况下实现...
WCF(Windows Communication...使用WCF配置文件工具,开发人员可以更高效地管理WCF服务的配置,从而优化服务性能,提高系统的可维护性和可靠性。无论是新手还是经验丰富的开发者,这个工具都能显著提升他们的工作效率。
然而,有时候为了简化开发流程或在特定场景下,我们可能会希望避免使用配置文件来直接创建和调用WCF服务。这种无配置调用WCF服务的方法,旨在提高开发效率和减少部署时的复杂性。 无配置调用WCF服务主要涉及以下几...
它为开发者提供了一种统一的方式来创建、部署和管理服务,这些服务可以跨越各种网络通信协议进行通信。本教程将引导您从基础到高级,深入理解WCF的各个方面。 ### 第一部分:WCF基础 在WCF的基础部分,我们将学习...
4. **配置服务**:在`App.config`文件中,配置服务的基本信息,包括服务地址、绑定和终结点。例如,使用`basicHttpBinding`绑定,创建一个公共终结点。 5. **启动服务主机**:在服务类中添加一个静态方法,如`Main`...
c#技术,wcf的app.config 的配置,可以替代webservice
本实例将介绍如何创建和使用两种不同部署方式的WCF服务:通过IIS(Internet Information Services)托管和作为Windows服务运行。 **IIS版本的WCF服务** 在IIS中部署WCF服务,首先需要确保IIS已经安装并启用了ASP...
在WCF中,服务协定是定义服务行为的核心元素,它描述了服务能够提供哪些操作以及如何与这些操作交互。本篇文章将深入探讨WCF中的“双工”服务协定,这是一种允许双向通信的高级通信模式。 双工服务协定允许服务和...
通过以上步骤,你可以实现一个纯配置文件驱动的WCF文件上传服务。在实际项目中,还需要考虑错误处理、日志记录、权限控制等更多细节,确保服务的稳定性和安全性。在提供的压缩包文件WCFTest中,可能包含了实现这些...
#### 二、WCF配置文件概述 WCF的配置文件主要分为两部分:服务端配置和服务客户端配置。这两部分虽然都是XML格式,但由于它们各自的功能不同,在具体配置方法上也存在差异。 ##### 1. WCF的服务端配置 服务端配置...
- **服务端配置**:在服务的配置文件中定义两个终结点,一个使用WSHttpBinding以支持Web调用,另一个使用NetTcpBinding或NetNamedPipeBinding以支持WCF客户端调用。每个终结点需要指定绑定、地址和合同。 - **...
### 发布WCF服务到IIS的详细步骤与配置 #### 标题解析 - **发布WCF服务到IIS**:此标题明确指出本文的主要目的是介绍如何将Windows Communication Foundation (WCF)服务部署到Internet Information Services (IIS)...
WCF服务是由接口(定义服务契约)、实现类(实现服务契约)和配置文件(定义服务的行为和绑定)组成的。在`WcfServices`和`WcfServices2`这两个项目中,我们可以看到这些元素的具体实现。 1. **服务契约**: 服务...
**WCF服务器与客户端使用示例文件v0.2** 是一个.NET框架的示例项目,专注于演示如何在**.NET 4.0**环境中利用**Windows Communication Foundation (WCF)**技术实现全双工服务调用。这个示例涵盖了从创建服务到客户端...
本篇文章将详细介绍如何在VS2010中配置和发布WCF服务到IIS(Internet Information Services),以便对外提供服务。 1. **创建WCF服务项目** 首先,在VS2010中创建一个新的WCF服务应用项目。选择"文件" -> "新建" -...
- **使用配置文件指定“已知数据类型”**:可以在配置文件中指定已知数据类型,避免在代码中硬编码。 - **枚举类型**:枚举类型也可以被标记为数据契约,并且可以通过 `[EnumMember]` 特性标记其成员。 #### 3. ...
WCF全面解析:上册.part3.rar
本文档将阐述 Windows 服务的步骤,通过图文并茂的方式来详细介绍如何发布 WCF 服务。 知识点一:建立 Windows 服务程序 在建立 Windows 服务程序时,我们需要创建一个新的 Windows 服务项目,并将其命名为 ...
**WCF服务配置config文件(Web应用)** Windows Communication Foundation (WCF) 是微软提供的一种用于构建分布式应用程序的服务框架,它允许服务提供商和消费者通过网络进行通信。在Web应用中,配置WCF服务通常...