C# オブジェクトから XML 文字列へのシリアル化
C# オブジェクトを XML 文字列表現に変換する必要がありますか? このガイドでは、XmlSerializer
クラスを使用して C# オブジェクトを XML に効果的にシリアル化する方法を説明します。
これが簡単な方法です:
<code class="language-csharp">XmlSerializer xsSubmit = new XmlSerializer(typeof(MyObject)); MyObject subReq = new MyObject(); string xml = ""; using (StringWriter sww = new StringWriter()) { using (XmlWriter writer = XmlWriter.Create(sww)) { xsSubmit.Serialize(writer, subReq); xml = sww.ToString(); // XML string is now in the 'xml' variable } }</code>
このコード スニペットは、MyObject
インスタンスを XML 文字列に効率的にシリアル化します。
ジェネリック型の柔軟性を高めるには、次のジェネリック シリアライザーを検討してください。
<code class="language-csharp">public class MySerializer<T> where T : class { public static string Serialize(T obj) { XmlSerializer xsSubmit = new XmlSerializer(typeof(T)); using (StringWriter sww = new StringWriter()) { using (XmlTextWriter writer = new XmlTextWriter(sww) { Formatting = Formatting.Indented }) { xsSubmit.Serialize(writer, obj); return sww.ToString(); } } } }</code>
この汎用メソッドにより、あらゆるクラス型のシリアル化が可能になります。 使用例:
<code class="language-csharp">string xmlMessage = MySerializer<MyClass>.Serialize(myObj);</code>
このアプローチは、C# オブジェクトを XML 文字列に変換するためのクリーンで効率的なソリューションを提供します。 運用環境では、潜在的な例外を適切に処理することを忘れないでください。
以上がC# オブジェクトを XML 文字列にシリアル化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。