我想解析一個json文件,然後對其進行操作以將數據插入SQL Server 2008數據庫。解析大json
例子:
var sr = new StreamReader("C:\\path to file\file.json");
var json = JsonSerializer.SerializeToString(sr);
var o = JsonObject.Parse(json);
但我總是在第二條線這個錯誤 - 「超時不支持此流。」
JSON文件看起來是這樣的:
"main":{
"prg": [
{
"Id": 1,
"name": "A&E",
more fields
}
"prg": [
{
"Id": 2,
"name": "asda",
more fields
}
}
我需要做這樣的事情
foreach (prg in main)
entity.id = prg.id
entity.name = prg.name
我怎麼能做到這一點,爲什麼我得到超時異常?
編輯:爲了更好地理解我的問題,這是我如何爲一個XML文件
XmlDocument sourceDoc = new XmlDocument();
sourceDoc.Load(SourcesElement2); // where SourcesElement2 is the path to my XML
XmlNodeList prg = sourceDoc.GetElementsByTagName("prg");
foreach (XmlNode item in prg)
{
entity.Name= item.SelectSingleNode("name").InnerText;
...
}
我已經轉換了XML爲JSON做,我想做同樣的事情。對於JSON文件中每一個「PRG」節點在數據庫中插入一個新的項目
EDIT2:
這是我做了什麼。
using (
StreamReader stream =
File.OpenText(
"C:\\path\\Sources.json")
)
{
JObject sources = (JObject) JToken.ReadFrom(new JsonTextReader(stream));
var a = sources["on"];
var b = a["sources"];
var c = b["prgs"];
foreach (var item in c)
{
var d= item.SelectToken("prg");
// Here d is null
}
我有同樣的問題,從上面的一個。對於Json文件中的每個「prg」節點,都會在數據庫中插入一個新項目。我怎樣才能做到這一點 ? (路徑prg是/ sources/prgs /)
你的問題是什麼? –
對不起。我編輯了這個問題。 – Kosmog