最近时间太少了马上要走了这篇文章就算是结尾吧可能说明会少些代码多些
接上篇文章我们先简单说明下绑定函数首先实例化ServiceA这个和一般类的实例化并没有不同接下来用xmlNode来接受函数的返回值接下来是构造xml并将其转化为dataset这是通用的方法如果是刚接触不久的朋友最好能记下这种方法
接下来给出异步调用两个服务的代码
//绑定数据
public void BindData()
{
IAsyncResult ar;
IAsyncResult ar;
serviceA=new SiteAService();
serviceB=new SiteBService();
DataSet ds=new DataSet();
XmlNode xmlNodexmlNode;
XmlDataDocument xd=new XmlDataDocument();
StringBuilder xmlStringxmlString;
//简单的异步调用
ar=serviceABeginGetSiteAData(strSearchnullnull);
ar=serviceBBeginGetSiteAData(strSearchnullnull);
xmlNode=serviceAEndGetSiteAData(ar);
xmlNode=serviceBEndGetSiteAData(ar);
//
if(xmlNode==null&&xmlNode==null) //存储过程执行失败
return;
xmlString=new StringBuilder(xmlNodeOuterXml);
xmlString=new StringBuilder(xmlNodeOuterXml);
xmlString=MakeNewXmlString(xmlStringxmlString);//生成新的xml
if(xmlStringToString()Equals(<NewDataSet xmlns=\\></NewDataSet>))
return ;
xdLoadXml(xmlStringToString());
dsReadXml(new XmlNodeReader(xd));
DataGridDataSource=dsTables[list]DefaultView;
DataGridDataBind();
}
//生成新XML
public StringBuilder MakeNewXmlString(StringBuilder strStringBuilder str)
{
str=strReplace(</NewDataSet>);
str=strReplace(<NewDataSet xmlns=\\>);
strAppend(strToString());
return str;
}
这有两个需要注意的地方一个是xml构造还有就是异步调用的实现请读者自己理解
下面讲下通过dll来引用webservice的方法我只把流程介绍下
首先在ie输入服务的地址如:
然后写输入
打开后另存为xxxwsdl
然后用vs的命令提示符来编译:wsdl /namespace:SiteA ServiceAwsdl
生成名字空间为sitea的代理类
最后csc /out:ServiceAdll /t:library Servicecs 其中servicecs为代理类文件
最后引用dll就可以了
到这里我们的例子基本也就介绍完了由于个人的原因最后一篇可能写的比较仓促非常惭愧
不知道写这么多对学习中的朋友会不会有帮助里面的东西很多也算是个人理解如果出错还请各位海涵:)
以后可能上网的时间会很少要考研了如果你有什么需要帮助的或是疑惑的地方可以联系我如果上网的话一定会回的