WINFORM搭建一个RESTFUL的服务环境

何喜同学一直在尝试在SAP PO上调通一个RESTFUL接口,我觉得我可以给他提供一个RESTFUL的服务端程序和RESTFUL的服务,

这样我们可以在接口上传递复杂的JSON报文,从一层加到多层的,最终实现我们可以按层级在PO上完成相应的配置。

 

VS2019 C#环境提供RESTful服务环境是比较简单的,都是使用MS已经做好的功能。

还是同原来 搭建一个WebService接口环境(SAP PO 开发 二) 中一样的思路,我喜欢用WINFORM桌面程序来存放REST服务,不需要去架设web服务来实现。

一、建一个WCF的DLL程序:

同WS服务一样,还是使用MS的WCF组件,新建一个WCF的DLL程序,下面是自动产生的代码。

除了这一句是我新加的,来自于一篇rest教程,看起来WS 和 REST的区别其实只要指定报文的格式为JSON,其它都是一样的:

[WebInvoke(
            Method = "GET",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "GetData/value={value}"
  )]

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;

namespace WcfServiceLibrary1
{
    // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的接口名“IService1”。
    [ServiceContract]
    public interface IService1
    {
        [OperationContract]

        [WebInvoke(
            Method = "GET",
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "GetData/value={value}"
            )]

        string GetData(int value);

        [OperationContract]
        CompositeType GetDataUsingDataContract(CompositeType composite);

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

    // 使用下面示例中说明的数据约定将复合类型添加到服务操作。
    // 可以将 XSD 文件添加到项目中。在生成项目后,可以通过命名空间“WcfServiceLibrary1.ContractType”直接使用其中定义的数据类型。
    [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; }
        }
    }
}

OK,点一下执行,VS2019居然给这个DLL程序安排了一个测试的客户端

然后用浏览器访问一下,RESTful服务器已经建立了,后面我只需要建一个WINFORM程序,把这个DLL运行起来就可以了,今天没心情做完,暂时就这样吧。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘欣的博客

你将成为第一个打赏博主的人!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值