微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

webservice 参数传递

webservice 参数传递
这两天碰到一个比较奇怪的事情,
一套完整的的smart client程序,client和server都是C#的,
在client和client生成的代理类都没有变更的情况下,修改server端的webservice的webmethod
的接口参数,对程序都没有影响,仍然能够正常运行。
client
clsTestService.CreateDiretory( "Name" );
 
Reference.cs
BeginCreateDiretory(string strName,System.AsyncCallback callback,object asyncState)
 
webservice
public void CreateDiretory( string strName )
1.追加参数(以int测试)
webservice
public void CreateDiretory( string strName,int i )
 
此时正常执行,只是  i 的值被认为0
 
2.减少参数
webservice
public void CreateDiretory( )
 
将webservice接口参数删掉,但是client不变,正常调用
 
3.改变参数名称
client
clsTestService.CreateDiretory( "Name" );
 
代理类不变
 
webservice
public void CreateDiretory( string strTestName )
 
此时,strTestName 所接收到的参数值不是 "Name"
而是 null
 
测试到此时,也有点头绪了,从测试结果看
webservice的参数传递是和参数名有关系的
是根据参数名来匹配和传值得。
 
因为也没有查相关资料,只是根据项目中的问题测试了一下
所以也不知道得出的结论是否正确,还有待从理论上说明。 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐