問題タブ [yamldotnet]
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# - DeserializerBuilder の使用方法
YamlDotNet を使用しようとすると、次の警告が表示されます。
Deserializer.Deserializer(IObjectFactory, INamingConvention, bool, YamlAttributeOverrides) は廃止されました: 'DeserializerBuilder を使用して Deserializer をカスタマイズしてください。このコンストラクターは、将来のリリースで削除される予定です。
そこで、プロジェクトの公式ホームページにアクセスします。
そして、「オブジェクト グラフのデシリアライズ」の例をクリックすると、 https ://dotnetfiddle.net/HD2JXM に移動します。
そして、驚くべきことに、これも廃止された関数を使用しています。
私はこれを行うことでそれを修正しました:
私の以前の代わりに:
これは正しいです?
c# - YamlDotNet で YamlNode をデシリアライズするには?
構造が事前にわからない任意の Yaml ファイルを読み取るアプリケーションがあります。YamlStream
およびその他のYamlNode
実装は、Yaml ファイル全体をトラバースできるため、便利であることがわかりました。ただし、ある時点でYamlNode
、通常はがYamlScalarNode
あり、そのノードをオブジェクトに逆シリアル化する YamlDotNet の機能を使用したいと考えています。どうやってやるの?
これは私が試したものです。これは醜く、明示的なタグを持つノードに対してのみ機能します (例: !!bool "true"
become true
、 but 1
become "1"
):
私がまだ見つけていないより良い方法があるに違いありません。
c# - C# の複合型を YAML に変換する
私は YAML の初心者であり、YAML を C# に解析する方法を研究しています。ここでは、C# の DataTable クラスや Type クラスなどの複雑なオブジェクト型のデータがある C# オブジェクト モジュールを解析しようとしています。YAMLDotNet ライブラリを使用して基本的な型を変換する方法は知っていますが、そのような型で同じことを行う方法は本当にわかりません。助けてください。
c# - YamlDotNEt と c# のカスタム型クラスを使用して、ネストされた YAML を逆シリアル化します。
私はこれを数日間行ってきましたが、これを機能させることができません。次の形式に従う YAML ファイルがあります (外部ファイルであるため、配信形式を変更できないことに注意してください)。私はランダムなトピックを選びましたが、構造は同じです。
Deserialized 時にこのデータを含むカスタム クラスを作成しました。
何かのようなもの:
それで!
質問 1: どのような名前を使用できますか、またはどのようにして addressData リストに任意の名前を受け入れさせることができますか? 基本的に、キーの名前ではなく、構造のどこにあるかによって受け入れます。
質問 2: この addressData の「コンテナー」からキー名を記録し、それを addressData オブジェクトの郵便番号スポットに保存したいと考えています。
c# - YamlDotNet で使用されるデフォルト コンストラクターの削除
さまざまなタイプのノードを含むオブジェクト グラフがあります。すべてのノードは Node クラスから派生します。YamlDotNet を使用して、独自のIObjectFactory
. やるべきことは、YamlDotNet シリアライザーを喜ばせるためだけに存在するコンストラクターを取り除くことだけです。
次の .NET フィドルを ご覧ください https://dotnetfiddle.net/KJMzxD
FancyNode.ctor()
削除したいコンストラクターですが、デシリアライザーですべてを処理したことをシリアライザーに伝える方法がわかりません。単純に削除すると、次のエラーが表示されます
型 'FancyNode' は、既定のコンストラクターまたは型コンバーターがないため、逆シリアル化できません。