【发布时间】:2017-05-11 16:11:02
【问题描述】:
我目前正在尝试在 C# 中修复我的 SOAP-Client,但不知何故被 Transfer-Encoding 卡住了。我或多或少是 C# 的新手,所以我完全有可能在这里遗漏了一些小东西。
我使用了本地 Tomcat 服务器的 SOAP 服务,如下:https://web.archive.org/web/20180506023052/http://www.csharptutorial.in/37/csharp-net-how-to-consume-a-web-service-in-csharp-net-visual-studio-2010
我当前的代码:
using System;
using ConsoleApp1.Lims;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
LimsZugriffService client = new LimsZugriffService();
// FunktionsErgebnis response = client.connect();
// Console.WriteLine("Connect" + response.meldung);
String[] bond = new String[] { "versuch.auftrag.nr=2014/0031" };
String[] bondFail = new String[] { "abc" };
VersuchsschrittErgebnis reponseVersuch = client.ermittleVersuchsschritte(bond);
Console.WriteLine(reponseVersuch.ermittelteVersuchsschritte.Length);
Console.WriteLine(reponseVersuch.meldung);
}
}
}
经过一些测试,我发现有些东西没有按预期工作。我的<ermittelteVersuchsschritte> Response-Array 似乎是空的,而“控制”-Flags 被正常解析。
我捕获了客户端和服务器之间的流量以找出问题所在,并且它实际上完全存在。只是分块成 8192 字节块。
会不会是,WebClient 的 C# 实现遇到了 Transfer-Encoding: Chunked 的一些问题?
在谷歌上搜索了几个小时后,我找不到一个令人满意的解决方案。我希望比我更了解 C# 和 WebServices 的人能给出答案。
为了完整起见:
我的WSDL
【问题讨论】:
标签: c# web-services soap soap-client webservice-client