我有一个从远处公开WCF服务的应用程序,这是我服务的一个例子:
[OperationContract(Name = "AddClient")]
bool AddClient(Client c);
我尝试从Console应用程序中使用WCF服务,尽管是ConsoleAp。没有任何“客户”类的定义,我可以通过我的ConsoleAp创建一个“客户端”实例,它完全正常。
我的问题是,是否可以从基于php的应用程序调用此函数,它是否允许我插入“Client”对象或以与.NET等效的方式定义它?
我想我可能会跳过我的脑袋,我应该做的就是发送简单的参数,事实是“客户端”有10多个属性/字段,并且看起来不够干净/净化。
由于
答案 0 :(得分:1)
我尝试从控制台应用程序中使用WCF服务,虽然是ConsoleAp。没有“客户”类的任何定义,我可以通过我的ConsoleAp创建一个“客户”实例,它完全正常。
确实如此。如果添加服务引用,则会生成包含服务定义的方法和类的代理类。您可以在服务引用下的文件Reference.cs
中看到此信息,如果您单击客户端上的转到定义(或按F12),您将在该文件中找到。
或者,如果控制台应用程序包含对WCF服务的程序集引用,则ConsoleApp可以访问WCF项目的公共类,但这与WSDL或WCF无关。
如果要在PHP中使用WSDL生成类,可以查看wsdl2php或wsdl2php-interpreter(找到here)或搜索另一个执行此操作的库或工具