問題タブ [xml-serialization]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - XmlSerializer、sgen.exe、ジェネリック
私はジェネリック型を持っています:
この型のインスタンスを XML との間で逆シリアル化/シリアル化したいと考えています。IContent
は次のように定義されています。
Packet
基本的に、コンテンツによって提供されるシリアライザーを使用して、コンテンツ メンバーをシリアライズおよびデシリアライズしたいと考えています。このシリアライザーは、実際には、sgen.exe によって生成されたコンパイル済みの xml シリアライザーのインスタンスです。
Packet<T>
実装せずに可能IXmlSerializable
ですか?
.net - XML デシリアライゼーション - 属性値を自動的にクラスに変換 (.net)
(vb.net/c#/etc)
少し逆シリアル化の魔法を行う方法を理解するのに苦労しています。現在、列挙型を含む標準の逆シリアル化は正常に機能しますが、属性をクラスに変換したいと考えています。おー!私は何を考えていました!
私のxmlは次のようになります。
そして、これは私のプロパティ/クラス用です:
文字列プロパティをこのクラスに自動的に逆シリアル化できるように、シリアライザーをどのように支援できますか? MyVersion クラスを何らかの方法で変更する必要がありますか、またはプロパティの定義を変更する必要がありますか?
- OnDeserialized などのメソッドをオーバーライドする必要はありません。このプロジェクトには価値がありません。
これがデフォルトの xml デシリアライザーで実行できない場合は、それを知っておくだけで十分です。よくないことがたくさんあるので、驚かないでください。
ありがとう!
c# - private および public const プロパティでの XmlSerializer の使用
XmlSerializer を取得して、クラスまたは構造体のプライベートおよび "public const" プロパティもシリアル化する最も簡単な方法は何ですか? 私のために出力されるのは、公開されているものだけではありません。プライベートにするか const を追加すると、値がシリアル化されません。
xml - 外部データを XML に追加する方法は?
XML スキーマと、そのスキーマに有効な XML インスタンスがあります。
この XML インスタンスにはいくつかのデータが含まれています。
提供されたスキーマに対して有効に保ちながら、XML インスタンスをさらにデータ (XML インスタンス内の XML 要素ごとの独自のメタデータ) で拡張したいと考えています。
実際の使用例は、XML 経由でデータを取得する独自のコントロールがあり、コントロールのシリアル化に関連する追加のメタデータを保持する新しい XML を生成したいと考えています。
私の解決策のいくつかは、XML をロードした後の 2 番目のパスでロードする「XPath,Mode,Color」のリストを含む別のドキュメントを保持することでした。
もう 1 つの解決策は、ID を XML ノードに追加し、この方法で (XPath を使用する代わりに) 別のドキュメントからノードを参照することでした。
もう 1 つのアイデアは、(要素ごとに私の名前空間にある) 属性をデータ XML インスタンスに何らかの方法で追加することでしたが、問題は、後で再度ロードしようとしたときに、新しい属性を使用して XML を検証するのにおそらく問題があることです。(XML に追加する属性が彼のスキーマで定義されていないため)
この問題のより良い解決策はありますか? どのソリューションに投票しますか? (説明してください。)
ありがとう!
c# - Deepxmlは構造体オプションをシリアル化します
以下に示すクラスと構造体があります。xmlserializerを使用してクラスをシリアル化すると、次のようになります。
<テスト>
<テスト番号1>5</テスト番号1>
<内部テスト/>
</テスト>
Numberプロパティにセッターを指定せずに、InnerTestを適切に(できればxmlserializerを使用して)シリアル化する最も簡単な方法は何ですか?
ありがとう、ニック
c# - 1 つのリスト内の複数のオブジェクト タイプの XmlSerialization
抽象的な「動物」のリストを持つオブジェクトがあります。すなわち
xmlserializer を使用して、上記を次の xml にシリアライズすることは可能ですか?
現時点では、次のものしか取得できません。
web-services - Web サービス応答のヌル文字により XML ドキュメント エラーが発生する
SQL Server Integration Services 2005 には、特定の状況で長さ 0 の文字列を単一の文字列に変換するバグがあるようです。その文字はたまたま ansi null です。ascii 文字ゼロ (これは sql null とは大きく異なることに注意してください)。
これは、データ ロード プロセスの 1 つで発生するため、空のはずの住所行にこれらの文字が含まれます。
このデータを Web サービス経由で公開すると、データは問題なくシリアライズされます。Web サービスの応答を IE で表示すると、標準の XSL によって null が取り除かれますが、ソースを表示すると、次のように表示されます。
しかし、.Net で生成されたプロキシからこのサービスを呼び出すと、エラーが発生します。
これはおそらく、null によって文書が終了し、文書が無効になるためです。
これらがデータベースに入るのを防ぐために最善を尽くすことはできますが、これらの値が応答にあるときにプロキシ コードがエラーになるのを防ぐ方法はありますか? これらを検出して削除するために、すべての Web メソッドにコードを追加したくはありません。
.net - 接頭辞付きの名前空間を持つが接頭辞付きの要素がないXMLドキュメントを逆シリアル化する方法は?
外部ソースからの XML ドキュメントがあります。
このようなオブジェクトに逆シリアル化する必要があります。
そのまま使用するとSerializer
、InvalidOperationException
<Info xmlns='http://www.ZomboCorp.com/'>
期待されていませんでした。
[XmlElement(Namespace = "http://www.ZomboCorp.com/")]
クラス定義に追加すると、 null プロパティを持つSerializer
新しいオブジェクトが返されます。Info
.net - XmlSerializer および InternalsVisibleTo 属性
属性XmlSerializer
を使用して内部クラス メンバーをシリアル化することは可能ですか?InternalsVisibleTo
そうである場合、どのアセンブリに内部を表示させる必要がありますか。つまり、どのアセンブリ名と公開キーをInternalsVisibleTo
属性に提供する必要があるかということです。
c# - XmlSerializer - 異なる属性を持つ同じ要素
私は以下を含むxmlを持っています:
XmlSerializer で xml を逆シリアル化するには、Day クラスにどの属性を追加する必要がありますか?