我正在尝试为我正在编写软件的测试系统编写翻译层。我使用LabVIEW作为测试系统,并使用RESTful Web服务。我已经实现了REST方法,它们正常运行。远程测试控制器和数据服务层等用C#和SQL编写,这些是我必须使用SOAP连接的项目。我有一个简单的Web服务客户端,由同事用C#编写的SOAP方面。我基本上需要获取C#程序收集的对象,然后构建一个小的XML,可以作为发布数据发送到REST URI。
我已经对C#课程进行了介绍,但是当我主要在LabVIEW中编写代码时,它是“基于你的基于文本的语言的C#”并没有帮助。我在很久以前接受过C语言和一些C ++的训练,但在课程中确实很挣扎,这是一个非常陡峭的学习曲线,并且从大约3个月前的课程开始就没有使用过C#。我想学习C#,并认为这将是一个简单的开始方式,但到目前为止我一直在努力。
确定一些代码:
[WebMethod]
[SoapHeader("RMSSvcHeader", Direction = SoapHeaderDirection.InOut)]
public ReturnStatus Initialise(string uri)
{
ReturnStatus rs = new ReturnStatus();
try
{
rs.Message = HttpPostXml(uri, @"C:\Inetpub\wwwroot\RMS\XMLMessages\Initialise.xml");
}
catch (Exception exc)
{
rs.Status = 1;
rs.Message = exc.Message;
}
return rs;
}
因此,当前版本使用一种方法将伪数据的集合XML文件作为POSTDATA发布到REST URI以进行测试。 传递给此方法的SOAP数据公开UUID(GUID)和方法名称。这意味着从这里我有足够的信息来创建需要发送到REST服务的POSDATA消息的XML。 像这样:
<?xml version="1.0" encoding="utf-8"?>
<Initialise>
<UUID>d7051980-a690-11dd-ad8b-0800200c9a66</UUID>
</Initialise>
我只需要指出正确的方向,即如何最好地将对象转换为XML以用于REST服务。
谢谢,
尼尔。
答案 0 :(得分:2)
您是否考虑过使用WCF? There is an easier way发布用于REST交互的服务。
答案 1 :(得分:0)
你可以做的是拥有webservices,以RESTful方式公开服务的页面,或SOAP方式(通过吐出XML)。