2

DataContractSerializerをスタンドアロンとして使用して、DataContract / Memberを使用するいくつかのオブジェクトをシリアル化します...残念ながら、ソリューションの構成設定にカスタムApp.Configセクションを追加しておくと、例外がスローされ続けます。このプロセスで...たとえば、私の設定は次のように設定されています:

<configuration>
    <appSettings>
         <!--stuff goes here -->
    </appSettings>

    <MyCustomSectionItDoesntLike>
        <!--stuff goes here -->
    </MyCustomSectionItDoesntLike>
</configuration>

次に、オブジェクトを取得し、メモリストリームを使用して書き込もうとします...

DataContractSerializer serializer = new DataContractSerializer(item.GetType());
using (MemoryStream memoryStream = new MemoryStream())
    {
           serializer.WriteObject(memoryStream, item);

    }

構成設定からMyCustomSectionItDoesntLikeを削除すると、正常に機能しますが、元に戻すと、例外がトリガーされます。

メッセージ:

'System.Runtime.Serialization.DiagnosticUtility'の型初期化子が例外をスローしました。

内側:

認識されない構成セクションMyCustomSectionItDoesntLike。(D:\ test \ bin \ x86 \ Debug \ test.vshost.exe.config行47)

シリアル化する場合を除いて、プロジェクトのどこにその設定が含まれているかがわからないのですが...これを正しく機能させるために追加する必要のある設定または構成セクションはありますか?

ありがとう!

アップデート

トータルボーンヘッドエラー....シリアライザーとは何の関係もありませんでした...

<configuration>
    <configSections>
         <!--This is where i blew it -->
         <section name="MyCustomSectionItDoesntLike" type="System.Stuff.Stuff" />
    </configSections>
    <appSettings>
         <!--stuff goes here -->
    </appSettings>

    <MyCustomSectionItDoesntLike>
        <!--stuff goes here -->
    </MyCustomSectionItDoesntLike>
</configuration>
4

1 に答える 1

1

configSectionsapp.config ファイルでカスタム セクションを実装するクラスを参照する必要があります。

詳細については、 http://msdn.microsoft.com/en-us/library/2tw134k3%28v=vs.100%29.aspxを確認してください。

于 2012-10-15T19:06:12.483 に答える