1

例ごとに、ハッシュテーブルを文字列で埋めるコードがあります: ("name", Oscar)。それらを使用して、(メモリ使用量だけで) XMLAtributes の値と内部テキストを埋めたいと考えています。しかし、問題が 1 つあります。

XmlElement Co = newDoc.CreateElement("Co1");

 XmlAttribute series = Co.Attributes.Append(newDoc.CreateAttribute("series"));
         series.InnerText = (string)vector["series"];
         series.Value = (string)vector["series"];
         MessageBox.Show((string)vector["series"]);
         MessageBox.Show(Co.Attributes["series"].InnerText.ToString());
         MessageBox.Show(Co.Attributes["series"].Value.ToString());

システムに値または内部テキスト (このコードが含まれる xml create メソッド内) を表示させたいときはいつでも、システムは何も返しません。その後、次の属性に渡され、「オブジェクト参照がオブジェクトのインスタンスに設定されていません。」が返されます。次のコードは次のコードです。

XmlAttribute folio = Co.Attributes.Append(newDoc.CreateAttribute("folio"));
             folio.InnerText = vector["folio"].ToString();

エラーは最後の行でヒットします。

クラスの他の場所では、.ToString() メソッドとキャストによって hastable の値を表示および取得できます。

ハッシュテーブルから適切に値を取得していないか、XMLAtributes に欠けているものがあるようです... ¿

4

1 に答える 1

0

あなたはこれを難しい方法でやっています:

var folio = Convert.ToString(vector["folio"]);
Co.SetAttribute("folio", folio);

などの心配は無用ですInnerText

于 2013-10-23T22:33:41.137 に答える