我正在托管用c#编写的.net webservice。在我的一个Web方法中,我期待一些入站参数,所有这些都是字符串。最后一个字符串实际上是一个xml字符串(我开始为此做一个数据集,但读取这个是一个很大的禁忌,所以改为使用这条路线。)
xml(作为字符串)非常简单。
<FriendsArray><Friend><FriendSocialID>123456789</FriendSocialID><FriendName>Test Test</FriendName><AvatarImage>https://www.imagelocation.com</AvatarImage><FriendGender></FriendGender></Friend></FriendsArray>
<FriendsArray>
为bounder,<Friend>
节点重复n次。在Web服务端,我接受这个字符串,将其序列化为xml并处理数据。
当在Visual Studio中的服务器上本地运行Web服务时,它运行正常,没有问题。当webservice在本地运行并附加到一个测试调用程序时,该程序只是模拟传递这些参数,包括将FriendArray传递给webservice,再次,正如下雨,没有问题,完美地工作。
调用webservice foreign的真实场景(通过模拟,如SoapUI或XMLSpy,或直接从应用程序调用它),它会轰炸服务。没有返回错误,或者空响应对象,它完全失败,并且什么都不返回。
第二个我删除了这个FriendArray(它在代码隐藏中是可选的),它运行得很好。
这样做是否存在一些固有的问题?如果是这样,是否有一种简单的替代方式,不需要大量的重新编码?谢谢!
答案 0 :(得分:3)
显然&#34;&lt;&#34;和&#34;&gt;&#34;以XML格式保留。我没有意识到这一点。我所要做的就是用字符串中的<
和>
来逃避它们,现在它完美无缺。