0

hi i have an field has OracleClob type.I want to cast this as my string data.How can i do it in c# ?

 [MapField("MSG_BODY")]
 public Oracle.DataAccess.Types.OracleClob MsgBody { get; set; }

i want to set MsgBody : "This is a sample";

I have to define an oracleclob object and fill it as string text.

4

2 に答える 2

2

Oracleのドキュメントによると、バッファリングされた配列を使用して記述する必要があるため、次のようになります。

char[] writeBuffer = "This is a sample".ToCharArray();
this.MsgBody.Write(writerBuffer, 0, writeBuffer.Length);
this.MsgBody.Close();
this.MsgBody.Dispose();

OracleClobを開いて作成したと仮定していることを覚えておいてくださいOracleConnection

于 2013-03-14T13:22:15.553 に答える
2

Oracleには触れたことがありませんが、ドキュメントによると、バイトストリームのように扱うことができます。

StreamWriterを追加すると、次のことができるようになります。

var sw = new StreamWriter(MsgBody, Encoding.UTF8); // Assuming you want UTF-8
sw.Write("This is a sample");
sw.Flush();
于 2013-03-14T13:23:01.493 に答える