[英]C# XmlSerialiser to Oracle Clob optimization
為了將xml文件保存到Oracle數據庫,我經歷了許多步驟。
XmlCustomType xmlCustomType = new XmlCustomType();
// feed xmlCustomType
var xmlSerializer = new XmlSerializer(typeof(XmlCustomType));
string xml;
using (StringWriter textWriter = new StringWriter())
{
xmlSerializer.Serialize(textWriter, xmlCustomType);
xml = textWriter.ToString();
using (var sr = new StringReader(xml))
{
char[] buffer = new char[1000];
int numChars;
using (OracleConnection con = new OracleConnection(""))
{
OracleClob clob = new OracleClob(con);
while ((numChars = sr.ReadBlock(buffer, 0, buffer.Length)) > 0)
{
clob.Write(buffer, 0, numChars);
}
}
}
}
我想用類似的東西來優化它
XmlCustomType xmlCustomType = new XmlCustomType();
// feed xmlCustomType
var xmlSerializer = new XmlSerializer(typeof(XmlCustomType));
using (OracleConnection con = new OracleConnection(""))
{
OracleClob clob = new OracleClob(con);
xmlSerializer.Serialize(clob, xmlCustomType);
}
不幸的是,我收到了我無法理解的錯誤消息:
對Unicode字節數組的操作要求某些參數具有偶數值
從xmlserializer到OracleClob的最少步驟是什么?
從1000到100000的緩沖區大小可以大大加快該過程。
每個clob.write都是對數據庫的請求,因此,這樣做可以減少對數據庫的請求數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.