【发布时间】:2017-07-28 18:51:28
【问题描述】:
我正在尝试将 XML 字符串作为 CLOB 从 Oracle 存储过程返回到 C# 字符串。
然后我使用 XmlWriter 类将此字符串写入文件。
我的代码如下所示:
string myString= ((Oracle.ManagedDataAccess.Types.OracleClob)(cmd.Parameters["paramName"].Value)).Value.ToString();
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss");
var stream = new MemoryStream();
var writer = XmlWriter.Create(stream);
writer.WriteRaw(myString);
stream.Position = 0;
var fileStreamResult = File(stream, "application/octet-stream", "ABCD"+fileName+".xml");
return fileStreamResult;
当我检查我的 CLOB 输出时,它完全返回到 myString。
当我检查我的最终结果时,XML 文件最后会被修剪。
例如,我的字符串会很大:长度为 3382563 或更多。
XmlWriter 是否有任何设置可以将完整的字符串写入文件。
提前致谢。
【问题讨论】:
-
为什么首先会有 XmlWriter?你希望它做什么?
标签: c# string filestream memorystream xmlwriter