問題タブ [xmlinclude]
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# - System.InvalidOperationException: タイプ [XYZ] は、このコンテキストでは使用できません。バグが確認されました
私はこれで頭がいっぱいです。.Net 2.0 asmx Web サービスから上記のエラーが発生することがあります。適切な XmlInclude() を配置しましたが、時々しか表示されません。サイトを再構築して更新すると、表示される場合と表示されない場合があります。韻や理由はありません。XmlIncludes() の一部を移動し、再構築して変更をプッシュすると、通常、エラーはなくなります。
すべてを DLL に変換するビルド プロセスを導入する前は、古き良き xcopy 展開方法を使用していました。そのときもエラーが発生しましたが、すべての XmlInclude() 呼び出しを定義するファイルにスペースを追加するだけで、IIS が再コンパイルされ、エラーは解消されました。
その価値のために、約 100 ほどの XmlIncludes が定義されています。
何か案は?
ここにスニペットがあります:
編集: XmlIncludes を再配置するとエラーが解消されるようですが、次回再コンパイルして再デプロイするときにエラーが発生する場合と発生しない場合があります。
編集#2:OK、もう少し詳細。web.config を変更してリサイクルを強制しても問題は解決せず、IIS を完全に再起動しても問題は解決しません。何らかの理由で、ログが正しく書き出されなかったため、スタック トレースはまだありません。
今回は、特定の2つのメソッドでエラーが発生していました。global.asax に変更を加え (スタック トレース ログの修正を試みるため)、再構築して更新すると、2 つの方法のうちの 1 つが機能し始めました。次に、XmlIncludes を含むクラスを 2 つの部分クラスに分割し、再構築して更新すると、両方のメソッドが再び機能し始めました。これが永続的な修正であるかどうかは現時点ではわかりません。これは非常にランダムであるためです。次のビルド サイクルでまた更新します。
編集#3:間違いなく永続的な修正ではなく、完全なスタックトレースをキャッチするための適切な場所にまだ夢中になっていません(他のログはすべて正常に機能していますが)。うーん。次回はまた更新します。
編集 #4: 最後にスタック トレースがあります。Visual Studio でも、global.asax のグローバル例外ハンドラーでもキャッチされません。メソッドを Web ブラウザから直接呼び出したときに表示される結果を次に示します。
編集#5:
これは上記のエラーの症状である可能性があるため、関連性があるとは確信していませんが、とにかく投稿します。Managed Debug Assistants にアタッチして一連の更新を行うと、最終的には次のようになります。
関連しているかどうかはわかりません...エラーストリームだけかもしれません。
編集#6:
わかりました、詳細。ここで、 Scott Hanselman のブログ投稿を使用して、生成されたアセンブリにステップ インしました。XmlInclude にもかかわらず、生成されたアセンブリには型への参照がないことが判明したため、これは間違いなく .NET のバグです。私はそれをトリガーするものを追跡しようとしていますが、出力アセンブリ (sgen?) を生成するものの何かが失敗しています。
編集#7:
これをフォローしている人のために参考までに、私はMSにバグレポートを提出しました:
https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=523253
c# - XmlInclude 属性を動的に追加する方法
私は次のクラスを持っています
コードを実行しようとすると、最後の行で InvalidOperationException が発生しました。
タイプ XmlTest.C は予期されていませんでした。XmlInclude または SoapInclude 属性を使用して、静的に認識されていない型を指定します。
[XmlInclude(typeof(C))] 属性を [XmlRoot] に追加すると問題が解決することはわかっています。しかし、私はそれを動的に達成したいと考えています。私のプロジェクトでは、ロード前にクラス C が不明であるためです。クラス C はプラグインとして読み込まれているため、そこに XmlInclude 属性を追加することはできません。
私も試してみました
前
しかし、役に立たない。それはまだ同じ例外を与えています。
誰もそれを達成する方法について何か考えがありますか?
c# - C# XmlSerializer の Java での XmlInclude に相当するもの
XmlInclude と同じことを C# で行う Java アノテーションを探しています。
ソケットを介して XML 構造を取得します。構造は次のようになります。
対応する Java クラスは次のように定義されます。
C# では、クラスは次のようになります。
<<< これはマジック ポイントのパブリック クラスのように思えます。 回答 : ICloneable
問題は、「AnswerObject」が任意のタイプのオブジェクトになる可能性があることです。私の例では、"AnswerObject" は "Status" 型のオブジェクトですが、文字列などでもかまいません。
C# では、XmlSerializer を使用して XML 構造を逆シリアル化できます。Javaでは、次を使用します。
C# と Java は (同様に) 文字列を自動的に処理します。しかし、別のオブジェクトがある場合は、XmlInclude の他の既知のクラスを使用して C# をアナウンスできます。Javaに似たようなものはありますか?
.net - すべての派生クラスに対して自動的に XmlInclude する方法は?
インスタンスが派生していない場合、XmlSerializer はオブジェクトに対してスムーズに動作するようです。それ以外の場合は、属性を明示的に適用して、特定の派生クラスを基本クラスに含める必要があります。XmlSerializer に、オブジェクトの派生部分を自動的にシリアル化するように指示する方法はありますか? 入力を減らしたいだけです。
c# - xsi:type = ""で使用されるXML文字列を指定する方法はありますか?
を使用してXMLにシリアル化されるクラスの階層がありますXMLSerialiser
。これを行うために、私はすべての具象型をで宣言してい[XmlInclude]
ます。例えば。
Derivedのインスタンスは、次のようにシリアル化されます。
タイプテキストをクラス名以外に変更する方法はありますか?例えば:
c# - xml シリアライゼーションと継承された型
エラー "{"The type Device1 was not expected. XmlInclude または SoapInclude 属性を使用して、静的に認識されていない型を指定してください。"}"
現在私は持っています:
そして私はやっています:
シリアライザーは次のことを行います。
シリアライザー メソッド (xs.Serialize) の最後の行で、"{"型 Device1 は予期されていませんでした。XmlInclude または SoapInclude 属性を使用して、静的に認識されていない型を指定してください。"}"
DeviceクラスにXmlIncludeを書いてみました。助けられませんでした。ラインを変えたら
することが
それは機能しますが、複数のデバイスタイプの配列を書きたいです。
xml - xml フラグメントが見つかりません
私はxmlファイルにxmlフラグメントファイルを含めようとしており、Javaコードからparent.xmlにアクセスしています。
Java コードは次のようになります。
parent.xml ファイルは次のようになります。
parent.xml と child.fragment は同じ場所にありC:/Users/admin/Desktop/
ますが、java コードは child.fragment.. を見つけることができません。
次のエラーが発生しました:
php - PHP 無視
を含む XML ファイルがあり<xi:include
、次のようにロードされます。
$datas = new SimpleXMLElement( file_get_contents( "data.xml" ) );
$dom = dom_import_simplexml($datas);
$dom->
を含む XML ファイルがあり<xi:include
、次のようにロードされます。
スクリプトを実行すると、エラーのないスクリプトのみ<xi:include
がロード/解析されます。
別のマシンでは、パーサーはメインの XML とすべてのインクルードを処理できます。エラーが発生した場合は<xi:include
、その場所とともにそれらを吐き出します。これはデバッグに役立ちます。
これは構成の問題のように見えますが、修正するタイミングが php.ini で見つかりません。
何か案が?
ありがとう。
関数を TinyMCE init に追加しtriggerSave()
て、エディターの変更イベントで基になるフィールドが自動的に更新されるようにすることができます...
これにより、AJAX 経由でフォームを投稿しようとするときに、これを行う必要がなくなります。
更新: セレクターは STRING または DOM 要素ですか? あなたのコードで私が見たものに基づいて
DOM 要素 (または jQuery でラップされた DOM 要素) を提供しようとしているようです。ここに記載されているように、セレクター パラメーターには STRING が必要です。
https://www.tinymce.com/docs/configure/integration-and-setup/#selector
(テストとして) 文字列をハードコーディングした場合、それは機能しますか?
を含む XML ファイルがあり<xi:include
、次のようにロードされます。
$datas = new SimpleXMLElement( file_get_contents( "data.xml" ) );
$dom = dom_import_simplexml($datas);
$dom->
を含む XML ファイルがあり<xi:include
、次のようにロードされます。
スクリプトを実行すると、エラーのないスクリプトのみ<xi:include
がロード/解析されます。
別のマシンでは、パーサーはメインの XML とすべてのインクルードを処理できます。エラーが発生した場合は<xi:include
、その場所とともにそれらを吐き出します。これはデバッグに役立ちます。
これは構成の問題のように見えますが、修正するタイミングが php.ini で見つかりません。
何か案が?
ありがとう。
関数を TinyMCE init に追加しtriggerSave()
て、エディターの変更イベントで基になるフィールドが自動的に更新されるようにすることができます...
これにより、AJAX 経由でフォームを投稿しようとするときに、これを行う必要がなくなります。
更新: セレクターは STRING または DOM 要素ですか? あなたのコードで私が見たものに基づいて
DOM 要素 (または jQuery でラップされた DOM 要素) を提供しようとしているようです。ここに記載されているように、セレクター パラメーターには STRING が必要です。
https://www.tinymce.com/docs/configure/integration-and-setup/#selector
(テストとして) 文字列をハードコーディングした場合、それは機能しますか?