`
Mr-zhang
  • 浏览: 18965 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

VRS简易接口<连载5>—C#通过SOAP调用

阅读更多
在VS中制作一个HelloSoap类,将姓名参数传递给规则服务,并调用hello规则包,显示返回的欢迎辞。
新建C#工程
在VS中,新建一个名为HelloSoap的控制台应用程序的工程:





添加引用
将RuleEngine.dll添加到引用中。该文件一般位于VisualRulesSolution安装目录的samples\notnet\RuleEngine\bin\Release目录下:





添加服务引用





然后输入Soap服务所在的地址,在地址栏中输入http://192.168.19.128:8880/soap/services/RuleSoap?wsdl 。
点击“前往”后,可以看到规则服务提供的接口。

输入一个命名空间后,点击确认。






图3-1-2-5-4 添加服务引用
编写Program.cs
在此中输入三个类,RuleSoapFactory、RuleSoapService、Program,其中RuleSoapFactory、RuleSoapService是对规则调用接口的实现。其他程序都可以像Program操作的那样,调用规则包。:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RuleEngine;
namespace HelloSoap
{
    public class RuleSoapFactory : RuleServiceFactory
    {
        override public RuleService RuleService
        {
            get
            {
                return new RuleSoapService(this);
            }
        }
        public RuleSoapFactory()
            : base()
        {
        }
        public virtual void close()
        {
        }
        public virtual void forceClose()
        {
            this.close();
        }
        public virtual void open()
        {
        }
    }
    public class RuleSoapService : AbstractRuleService
    {
        private RuleSoapFactory Factory
        {
            get
            {
                return (RuleSoapFactory)factory;
            }
        }
        public RuleSoapService(RuleSoapFactory factory)
            : base(factory)
        {
        }
        protected override System.String send(System.String xml)
        {
            try
            {
                HelloSoap.ServiceReference1.RuleSoapClient soap = new HelloSoap.ServiceReference1.RuleSoapClient();
                return soap.getRule(xml);
            }
            catch (System.Exception e)
            {
                Factory.forceClose();
                throw new RuleServiceException(e);
            }
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            RuleSoapFactory factory = new RuleSoapFactory();
            RuleService service = factory.RuleService;
            service.put("name", "测试Soap访问");
            service.execute("hello");
            Console.WriteLine(service.getString("welcome"));
            Console.Read();
        }
    }
}
执行测试类
点击执行后,看到执行结果如下,说明已经调用规则包成功:




  • 大小: 29.1 KB
  • 大小: 18.7 KB
  • 大小: 46.5 KB
  • 大小: 55.6 KB
  • 大小: 60 KB
分享到:
评论

相关推荐

    VRS edit 2.24版本

    VRS Edit 2.24版本是一款专为SEF机器人程序编写监控设计的软件工具。该软件的核心功能在于提供一个高效、便捷的环境,帮助程序员和自动化工程师更好地管理和优化他们的机器人程序。VRS Edit这个名字可能是“Virtual ...

    DH-VRS16录音系统说明书

    DH-VRS16录音系统说明书 DH-VRS16录音系统是一款功能强大且灵活的电话录音解决方案,旨在提供高效、可靠的录音管理体验。该系统通过安装配套的录音系统软件在PC机上,用户可以轻松实现录音回放、录音查询、录音监控...

    VRS及其在矿山测量应用中关键技术分析

    标题:VRS及其在矿山测量应用中关键技术分析 VRS(虚拟参考站)技术是GPS(全球定位系统)网络RTK(实时动态定位)技术的一种,具有传统测量技术和传统RTK技术无可比拟的优点。随着技术的日益成熟,VRS在矿山测量中...

    基于VRS51L3074的LED显示屏控制系统

    ### 基于VRS51L3074的LED显示屏控制系统 #### 1. 引言 本文主要介绍了如何利用VRS51L3074这款高性能的8051单片机来设计一种LED显示屏控制系统。VRS51L3074作为市场上首款内置铁电存储器(FRAM)的8051单片机,不仅...

    Script in c#Unity自学

    《Script in C#——VRS维奥起点推荐Unity自学读物》是一本专注于Unity游戏引擎中C#编程的自学教程。Unity是全球广泛使用的跨平台游戏开发工具,它结合了强大的可视化编辑器和灵活的脚本系统,使得游戏开发者能够快速...

    MTX 15VRS SPS-Interface

    MTX 15VRS SPS-Interface 是一款由 Bosch Rexroth AG 开发的工业自动化设备接口,主要用于连接和通信MTX系列的PLC(可编程逻辑控制器)与SPS(Simulation and Programming Station,模拟和编程站)。该接口设计用于...

    RTCM.zip_RTCM _mc55_vrs

    在GPS应用中,MC55模块可以通过串行接口接收来自VRS的RTCM数据流,这些数据有助于提高定位精度。 VRS(Virtual Reference Station)是一种差分GPS技术,通过结合多个GPS接收器的数据,模拟一个虚拟参考站,从而提供...

    基于VRS51L3074的多点定闹电子日历钟的设计

    摘要论述了多点定闹电子日历钟系统的设计,在VRS51L3074单片机的控制下,使用串行时钟芯片DSl2887,实现时间和闹钟的设置功能。通过键盘和液晶显示提示,可以方便地校对时钟和设置闹钟,利用键盘、LCD显示模块构成

    CORS与VRS参考站建设

    CORS与VRS参考站建设 PPT CORS与VRS参考站

    基于VRS技术的RTK-GPS接收系统设计.pdf

    VRS技术通过网络整合多个参考站的数据,为用户提供等同于近在咫尺的参考站效果,从而实现整个网络覆盖范围内的高精度定位。 该文介绍了基于VRS技术设计的一套RTK-GPS接收系统,目的是满足农业中对高精度定位数据的...

    Python库 | quartet_vrs-1.1.8-py2.py3-none-any.whl

    - 安装完成后,通过`import quartet_vrs`即可在Python程序中引入这个库,接着就可以调用其提供的函数或类。 4. **Python 后端开发**: - 在Python中,后端开发通常涉及服务器端逻辑、数据库交互、API设计等。这个...

    关于天宝R8-RTK及VRS测量简明教程.docx

    VRS技术是天宝公司开发的一种网络RTK作业模式,通过在一定区域内设立多个基准站,接收卫星信号并将信息传送到数据处理中心。当移动站需要定位时,会先将自己的位置信息发送到中心,中心根据移动站的位置虚拟出一个...

    Rexroth MTX 15VRS NC Simulation Multitouch 力士乐数控系统

    力士乐数控系统MTX 15VRS NC Simulation Multitouch是一款先进的工业自动化解决方案,由全球知名工业技术供应商博世力士乐(Bosch Rexroth)开发。这款系统集成了先进的模拟和多点触控技术,专门用于数控(NC)应用...

    电信设备-基于区域网格划分机制的VRS信息接收终端及其工作方法.zip

    5. **优势与应用**:基于区域网格划分的VRS技术,降低了系统复杂性,提高了定位速度和精度,尤其适用于需要实时高精度定位的场景,如自动驾驶、无人机导航、精准农业和地质灾害监测等领域。 综上所述,这个压缩包中...

    GPS(VRS)技术在公路测量中的应用.pdf

    VRS技术通过整合多个实际基准站的数据,虚拟出一个参考站,从而提供更稳定、高精度的位置服务。 1. VRS技术原理 VRS技术的核心是利用网络中的多个基准站接收卫星信号,然后在数据中心进行数据处理。移动站先将自己...

Global site tag (gtag.js) - Google Analytics