我正在尝试使用OopFactory X12 Parse来解析流响应 这是我的代码
var parser = new X12Parser();
var _response = response.GetResponseStream();
Interchange interchange = parser.Parse(_response);
string value = interchange.Serialize();
response.Close();
它在这里抛出错误 parser.Parse(_response);
错误:
1不是文件位置105中的有效子元素分隔符。
我的回复文件:
ISA*00* *01*JILITTQQPK*ZZ*S00000000000001*ZZ*T00000000021261*120330*1048**00501*021465163*0*T*>
注意:
这只发生在我的开发服务器上,如果我在本地运行我的应用程序,这将没有问题。
我想知道dev上的响应是否与本地相同。 如何在dev上捕获流响应并与我的本地进行比较?
ISA*00* *01*NOPASS *ZZ*S00000000000001*ZZ**120405*1000**00501*021539342*0*T*>~TA1*17049371*120405*1000*R*018~IEA*0*021539342~
答案 0 :(得分:1)
ISA08应包含15个字符。在您的响应文件中,ISA08没有任何数据。因此,部分TA1段被解析为固定宽度ISA段的一部分。
答案 1 :(得分:0)
也许您的响应流在开发服务器上包含额外的标头信息。 您应该添加一些额外的行来将响应写入文件,看看它是否纯粹是返回的X12消息。 我们也欢迎您将问题发布到http://x12parser.codeplex.com/discussions,这可能会得到更多回复。