我在 Web 服务中有一个类(用 C# 编写)我需要在我的 php 页面中实例化这个类并为其元素赋予价值。这是 Web 服务中的类:
public partial class VehicleConfiguration : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
[System.NonSerializedAttribute()]
private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
private int IdField;
private string VINField;
private ConsumeKbbAPI.ServiceReference1.IdStringPair YearField;
private ConsumeKbbAPI.ServiceReference1.IdStringPair MakeField;
private ConsumeKbbAPI.ServiceReference1.IdStringPair ModelField;
private ConsumeKbbAPI.ServiceReference1.IdStringPair TrimField;
//private ConsumeKbbAPI.ServiceReference1.VehicleTrim TrimField;
private int MileageField;
private ConsumeKbbAPI.ServiceReference1.EquipmentOption[] OptionalEquipmentField;
private System.DateTime ConfiguredDateField;
我已经在我的 php 页面中连接到 webserive,但我不知道如何实例化属于 Web 服务的这个类并为其元素(如年份、制造、模型)赋予价值,.....
那是我尝试过但没有工作:
$vconfig = new $client.VehicleConfiguration;
$vconfig->$Year= "2009"
$client是我的肥皂初始化:
$client = new nusoap_client('https://id.b.com/3.0/Vehicle.svc?wsdl', 'wsdl',
$proxyhost, $proxyport, $proxyusername, $proxypassword);
我尝试做的事情类似于 C# 中的这个:
ServiceReference1.VehicleConfiguration vconfig = new ServiceReference1.VehicleConfiguration();
vconfig.Make = "toyota";
vconfig.Model = "MG";
$proxy = $client->getProxyClassCode();
print_r($proxy);
可以使用上面的代码显示 Web 服务公开的可用方法。您应该能够查看 WSDL,并了解如何传入参数以获取来自服务的响应。
我没有使用过nu_soap,但我会这样想
$params = array("Make" => "Toyota", "Model" => "MG" );
$result = $client->call('VehicleConfiguration', $params);