我在php中调用asp.net web servicr [英] I canot call asp.net web servicr in php
本文介绍了我在php中调用asp.net web servicr的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用asp.net框架4创建了Web服务:
[WebMethod]
public DataSet GetMembers( string memberId, string thirdName)
{
string connStr = ConfigurationManager.ConnectionStrings [ conStr ] .ConnectionString;
SqlConnection cn = new SqlConnection(connStr);
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
da.SelectCommand = new SqlCommand( @ SELECT MemberMaster.MemberId,MemberMaster.FirstName,MemberMaster.SecondName,MemberMaster.ThirdName,MemberMaster.CivilNo,MemberMaster.DateOfBirth,MemberSubcription.MemberId
FROM MemberMaster内部联接MemberMub上的MemberSubcription.MemberId = MemberSubcription.MemberId
WHERE MemberMaster.MemberId =@MemberId和MemberMaster.ThirdName=@ThirdName,cn);
da.SelectCommand.Parameters.Add( @ MemberId,SqlDbType.NVarChar)。 Value = memberId;
da.SelectCommand.Parameters.Add( @ ThirdName,SqlDbType.NVarChar)。 Value = thirdName;
ds.Clear();
da.Fill(ds);
return ds;
}
它在localhost中运行良好,但是当我在php中调用它时:
<?php
$ wsdlUrl = http://xxxx/WS/WebService.asmx?WSDL;
$ client = new soapclient($ wsdlUrl);
$ params = array(' memberId' => ' W1100045',
' thirdName' => ' 阿里'跨度>);
$ result = $ client-> GetMembers($ params);
$ echoText = ' 跨度>;
if (is_null($ result-> GetMembersResult))
{
echo no result;
}
else
{
echo $ result-> GetMembersResult;
}
?>
出现此错误:可捕获的致命错误:类stdClass的对象无法在第23行转换为字符串
有什么问题,我该如何解决这个问题问题?
解决方案
wsdlUrl = HTTP://xxxx/WS/WebService.asmx WSDL跨度>;
client = new SoapClient的(
WSDLURL);
I created web service using asp.net framework 4 :
[WebMethod]
public DataSet GetMembers(string memberId, string thirdName)
{
string connStr = ConfigurationManager.ConnectionStrings["conStr"].ConnectionString;
SqlConnection cn = new SqlConnection(connStr);
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
da.SelectCommand = new SqlCommand(@"SELECT MemberMaster.MemberId,MemberMaster.FirstName,MemberMaster.SecondName,MemberMaster.ThirdName,MemberMaster.CivilNo,MemberMaster.DateOfBirth,MemberSubcription.MemberId
FROM MemberMaster inner join MemberSubcription on MemberMaster.MemberId=MemberSubcription.MemberId
WHERE MemberMaster.MemberId=@MemberId and MemberMaster.ThirdName=@ThirdName", cn);
da.SelectCommand.Parameters.Add("@MemberId", SqlDbType.NVarChar).Value = memberId;
da.SelectCommand.Parameters.Add("@ThirdName", SqlDbType.NVarChar).Value = thirdName;
ds.Clear();
da.Fill(ds);
return ds;
}
it work good in localhost but when i call it in the php :
<?php
$wsdlUrl = "http://xxxx/WS/WebService.asmx?WSDL";
$client = new soapclient($wsdlUrl);
$params = array('memberId' => 'W1100045',
'thirdName' => 'Ali');
$result = $client->GetMembers($params);
$echoText = '';
if (is_null($result->GetMembersResult))
{
echo "no result";
}
else
{
echo $result->GetMembersResult;
}
?>
this error appear : Catchable fatal error: Object of class stdClass could not be converted to string on line 23
what is the problem and how can i solve this problem ?
解决方案
wsdlUrl = "http://xxxx/WS/WebService.asmx?WSDL";
client = new soapclient(
wsdlUrl);
这篇关于我在php中调用asp.net web servicr的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文