簡體   English   中英

c#:異化到數據集

[英]c# : Deserealization to DataSet

誰能在C#上幫助JSON字符串解析?

我試圖從https://www.newtonsoft.com/json/help/html/DeserializeDataSet.htm復制示例

string json = @"{
                'Table1': [
                      {
                       'id': 0,
                       'item': 'item 0'
                      },
                      {
                        'id': 1,
                        'item': 'item 1'
                      }
                      ]
                     }";

dataSet = JsonConvert.DeserializeObject<DataSet>(json);

我收到異常:

JsonConvert.DeserializeObject異常System.Runtime.Serialization.SerializationException:找不到成員'XmlSchema'。 09-17 07:41:27.075 I / mono-stdout(3691):JsonConvert.DeserializeObject異常System.Runtime.Serialization.SerializationException:找不到成員'XmlSchema'。 在System.Runtime.Serialization.SerializationInfo.GetValue的<3fd174ff54b146228c505f23cf75ce71>:0中的System.Runtime.Serialization.SerializationInfo.GetElement(System.String名稱,System.Type&foundType)[0x00020]上(System.String名稱,System.Type類型)[0x0002e],位於<3fd174ff54b146228c505f23cf75ce71>:0中,位於System.Data.DataSet.DeserializeDataSetSchema(System.Runtime.Serialization.SerializationInfo信息,System.Runtime.Serialization.StreamingContext上下文,System.Data.SerializationFormat遠程格式化,System.Data.SchemaSerializationMode )[0x000f5]在0處位於System.Data.DataSet.DeserializeDataSet(System.Runtime.Serialization.SerializationInfo信息,System.Runtime.Serialization.StreamingContext上下文,System.Data.SerializationFormat remotingFormat,System.Data.SchemaSerializationMode schemaSerializationMode)中[0x00000f5] ]在System.Data.DataSet..ctor(System.Runtime.Serialization.SerializationInfo inf o,System.Runtime.Serialization.StreamingContext上下文中, (0。方法)System.Object:lambda_method(System.Runtime.CompilerServices.Closure,object [])在Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateISerializable(Newtonsoft.Json.JsonReader閱讀器,Newtonsoft.Json.Serialization.JsonISerializableContract合同,Newton .Serialization.JsonProperty成員,System.String id)[0x0015b]在Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(Newtonsoft.Json.JsonReader reader,System.Type objectType,Newtonsoft.Json.Serialization.JsonContract合同,Newtonsoft。 .Json.Serialization.JsonProperty成員,Newtonsoft.Json.Serialization.JsonCo ntainerContracterContainerContract containerContract,Newtonsoft.Json.Serialization.JsonProperty containerMember,System.Object存在值)[0x00347]在:0處Ne wtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(Newtonsoft.Json.JsonReader reader,System.Type objectType,Newtonsoft.Json.Serialization.JsonContract合同,Newtonsoft.Json.Serialization.JsonProperty成員,Newtonsoft.Json.Serialization.JsonContainer .Json.Serialization.JsonProperty containerMember,System.Object現有值)[0x0006d]在Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(Newtonsoft.Json.JsonReader reader,System.Type objectType,System.Boolean checkAdditionalContent)中為0:在0時在Newtonsoft.Json.JsonSerializer.DeserializeInternal(Newtonsoft.Json.JsonReader reader,System.Type objectType)[0x00053]在:0時在Newtonsoft.Json.JsonSerializer.Deserialize(Newtonsoft.Json.JsonReader reader,System.Type objectType )[0x00000]在Newtonsoft.Json.JsonConvert.DeserializeObject的:0中(System.String值,System.Type類型,Newtonsoft.Json.JsonSerializerSettings設置)[0x 0002d]在0時在Newtonsoft.Json.JsonConvert.DeserializeObject [T](System.String值,Newtonsoft.Json.JsonSerializerSettings設置)在[0x00000]中:0

什么東西少了? 我應該添加任何XML模式嗎?

正如@Willem在評論中指出的那樣,請使用雙引號( 在此處驗證):

{
    "Table1": [{
            "id": 0,
            "item": "item 0"
        },
        {
            "id": 1,
            "item": "item 1"
        }
    ]
}

以下表示圖是JSON.org的描述 在此處輸入圖片說明

就我而言,我正在使用Asp.Net Core。 我需要使用nuget並獲取Newtonsoft.Json的最新版本。 也許該應用程序使用預安裝的Newton.Json舊版本。 獲得最新的Newtonsoft.Json(v12.0.1)之后,它可以完美運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM