的我收到一个错误:使用未分配的局部变量错误
"Use of unassigned local variable 'PostData'"
编译下面的方法中下面的语句时。我的意图是获取包含XML SOAP标头的“字符串”值,并将其转换为XMLDictionaryWriter
对象。见下面我的代码:
Stream PostData;
byte[] buffer = Encoding.ASCII.GetBytes(x509.CreateX509SoapEnvelope());
PostData.Write(buffer, 0, buffer.Length); // error here
XmlDictionaryWriter xmlwriter = XmlDictionaryWriter.CreateTextWriter(PostData, Encoding.ASCII);
request.Headers.WriteHeaderContents(0,xmlwriter);
仅供参考,的x509.CreateX509SoapEnvelope()
输出是一个字符串,我测试的一部分,它的工作原理。我标记了上面的代码以显示错误发生的位置。需要帮助解决错误以及如何解决它?
是整个代码块吗?你声明'Stream PostData',但没有将它构造成任何东西,所以它只是坐在'null'中。当你对它做'.Write'时,你会得到一个空引用异常。 – debracey
XmlDictionaryWriter.CreateTextWriter接受流类型,因此我需要将我的字符串值转换为流,然后在XMLDictionaryWriter实例化时将其作为参数传递。有没有更好的方法来修改我的代码? – wcfvemi