从WIN32 Delphi应用程序中使用ADO.NET数据服务。怎么样?

时间:2009-07-09 09:20:57

标签: delphi wcf-data-services delphi-2007

简单。我创建了一个LINQ-TO-SQL实体模型,创建了一个网站,向该网站添加了一个数据服务(* .svc),并通过编写一个简单的.NET控制台应用程序确保它的工作原理。该服务工作正常,无法修改。

现在我要为WIN32编写一个Delphi应用程序(2007),它必须调用这个数据服务。虽然Delphi没有导入SOAP服务的主要问题,但它不能导入此服务,因为它不提供WSDL ...

所以,有两种选择。我可以弄清楚如何基于这个数据服务生成WSDL,或者我必须找到另一种方法来使用这个服务。 (或者只是放弃,但我讨厌退出这个挑战。)那么,有什么建议吗?

3 个答案:

答案 0 :(得分:1)

也许您可以使用项目Jedi“url grabber”组件来使用该服务。我过去曾设法使用这些获取实时共享数据。我不确切知道你的设置是如何工作的,但也许这些可能会有所帮助。

http://www.delphi-jedi.org/

答案 1 :(得分:1)

ADO.NET数据服务是REST服务。它们不是SOAP WebServices,我认为REST不使用WSDL。您可以使用HTTP GET / PUT / POST / DELETE从Delphi调用REST服务。你可以使用Indy的TIdHTTPClient。有关网址示例,请参阅http://msdn.microsoft.com/en-us/library/cc668786.aspx。结果采用Atom格式,这是一种XML格式。你可以用TXMLDocument解析它。他们也可以返回JSON

答案 2 :(得分:0)

你还应该看看synapse,这是一个易于使用的小型库,可以很好地与REST配合使用。最新版本可以通过SVN下载,在Delphi 2009中运行良好。