MSMQ (主に文字列) を介してネットワーク経由でオブジェクトをシリアル化するユース ケースがあります。キューからオブジェクトを読み取るときに、ユーザーがオブジェクトを XML にするつもりだったのか文字列にするつもりだったのかを判断できるようにしたいと考えています。これを行う良い方法は、タイプを確認することだけだと思っていました。XmlElement の場合は XML データになり、それ以外の場合は文字列または CDATA になります。データが有効な XML かどうかだけを確認したくない理由は、文字列としてシリアル化されるはずのデータが実際には有効な XML である場合があるためです。呼び出し元が文字列または XML への逆シリアル化を制御できるようにしたい。
XElement や XmlElement (両方ともシリアル化可能とマークされていない) のように、.NET Framework でシリアル化可能とマークされている型はありますか?