简单的WCF练习(1)

第一个WCF程序
一、新建一个项目:
这里写图片描述
修改一下端口:我这里是用8888端口,你也可以用自动分配的端口。
这里写图片描述
代码如下:
namespace WCFService
{
// 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码、svc 和配置文件中的类名“Service1”。
public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format(“You entered: {0}”, value);
}

    public CompositeType GetDataUsingDataContract(CompositeType composite)
    {
        if (composite == null)
        {
            throw new ArgumentNullException("composite");
        }
        if (composite.BoolValue)
        {
            composite.StringValue += "Suffix";
        }
        return composite;
    }
}

[ServiceContract]
public interface IService1
{

    [OperationContract]
    string GetData(int value);

    [OperationContract]
    CompositeType GetDataUsingDataContract(CompositeType composite);

    // TODO: 在此添加您的服务操作
}


// 使用下面示例中说明的数据约定将复合类型添加到服务操作。
[DataContract]
public class CompositeType
{
    bool boolValue = true;
    string stringValue = "Hello ";

    [DataMember]
    public bool BoolValue
    {
        get { return boolValue; }
        set { boolValue = value; }
    }

    [DataMember]
    public string StringValue
    {
        get { return stringValue; }
        set { stringValue = value; }
    }
}

二、测试服务
现在用VS自带的WCF测试客户端测试一下服务。
这里写图片描述
这里写图片描述
在请求窗口中的值中输入参数数值,然后点击“调用”,在响应窗口中会出现返回值“WCF服务,显示姓名:You entered 数值,说明测试成功,点击下面的XML也可以看到XML的数据传输。我们现在建立好了服务的应用程序和业务逻辑,即非常简单的打印姓名的方法,测试也成功了。

三、WCF程序寄宿在B服务器的IIS之上
1.添加应用程序池
这里写图片描述
这里写图片描述
2.添加网站
这里写图片描述
这里写图片描述
部署需要从生成部署包
这里写图片描述
找到生成的部署包
这里写图片描述
部署,这里导入刚刚生成的部署包。
这里写图片描述
这样IIS配置就完成了,只要应用程序池有启动,就能正常访问该网站服务了。
这里写图片描述
三、客户端的引用
添加服务引用
这里写图片描述
private void button1_Click(object sender, EventArgs e)
{
WCFService.Service1Client client = new WCFService.Service1Client();
try
{
string result = client.GetData(Convert.ToInt16(textBox1.Text));
}
catch
{
MessageBox.Show(“填写的内容必须为数值”);
}
MessageBox.Show(result);
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本书是WCF的权威指南。WCF是Microsoft推出的在Windows操作系统下开发面向服务应用程序的统一平台,是革命性的技术平台。作为微软授予的“软件英杰”,本书作者Juval Lwy曾经参与了WCF的战略性设计,并与WCF的开发团队一同合作,因此本书具有很高的实用价值,它对WCF进行了深入的技术剖析,而非死板的文档化描述。本书关注隐藏在特殊设计决策之后的根本原理,这些原理包括SOA开发中极度匮乏的文档,以及难以理解的特性等。通过本书,开发者与架构师不仅能够了解如何进行WCF程序设计,还能够掌握相关的设计准则、最佳实践以及WCF存在的缺陷。   本书包括50多个工具和辅助类,以及70多个设计图,它们都设计用来提高我们的生产力,保障WCF服务的质量,同时能弥补WCF自身存在的一些缺陷,并帮助简化和自动化特定任务。   除了介绍面向服务的基础知识外,本书涵盖了以下内容:   •服务契约分解。   •事务与错误处理。   •数据契约版本控制与封送。   •并发管理。   •可伸缩性策略。   •队列服务。   •操作、调用与事件。   •面向服务安全性。   •本书从软件工程的角度出发,深入探索了WCF的每个主题。本书能够使您如虎添翼,从而设计出可维护的、可扩展的、可重用的SOA应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值