0

LINQOオブジェクトを逆シリアル化するために多くの方法を試しましたが、すべてのメソッドが失敗しました。これが最後のコードの例です。

        System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();

        DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(SalesNetData.Country));
        string xmlData = Session["CCC"].ToString();
        byte[] byteArray = new byte[xmlData.Length];
        byteArray = encoding.GetBytes(xmlData);

        MemoryStream stream1 = new MemoryStream(byteArray);

        SalesNetData.Country country = (SalesNetData.Country)ser.ReadObject(stream1);
        Console.WriteLine("Deserialized Country data:");

しかし、今、次のエラーが発生します。

タイプ「SalesNetData.Country」は、IsReference設定が「True」であるため、JSONにシリアル化できません。参照を表すための標準化された形式がないため、JSON形式は参照をサポートしていません。シリアル化を有効にするには、タイプまたはタイプの適切な親クラスのIsReference設定を無効にします。

助けてください.....

4

2 に答える 2

1

この問題の解決策については、次のスレッド(community.codesmithtools.com/forums/p/10080/37441.aspx#37441)を参照してください。Newton Json.NET(codeplex.com/Json)の使用についても検討する必要があります。

ありがとう-BlakeNiemyjski

于 2009-10-30T14:45:55.690 に答える
-1

解決策はエラーメッセージにあります...

シリアル化を有効にするには、型または型の適切な親クラスの IsReference 設定を無効にします。

于 2009-10-30T13:06:52.160 に答える