我有這樣一個數據表中:Sample DataTable轉換一個數據表來JSON與具有值數組列
我需要作爲輸出的JSON是在下面的格式:
{
"Column1": ["value1","value2"],
"Column2": ["value3"],
"Column3": ["value4","value5"]
},
{
"Column1": ["value1","value2"],
"Column2": ["value2","value3"],
"Column3": ["value4","value5"]
}
所以基本上我有一個每行中逗號分隔值列表。它也可以是單個值。如果有多個值,我希望JSON以指定的格式包含數組。
我完全控制格式化DataTable中的行。我試圖在SQL Server查詢本身中構建格式,但正如你所知,當執行JsonConvert.SerializeObject(Datatable)
時,它會轉義不是我想要的雙引號。
請讓我知道如何才能做到這一點。 我在C#端使用SQL Server 2008和NewtonSoft Json。
編輯 -
DataTable中包含超過10行,可能會增加更多的後來。所以我想避免特定列上的自定義邏輯。
你必須做代碼來轉換數組中的逗號分隔值。 –
你的json在這些行''Column3「末尾用額外的逗號錯誤地形成:[」value4「,」value5「],' – Turophile
你需要做的是重構你的數據庫。閱讀[在數據庫列中存儲分隔列表真的很糟糕嗎?](http://stackoverflow.com/questions/3653462/is-storing-a-delimited-list-in-a-database-column-really-that -bad),在這裏你會看到很多原因,爲什麼這個問題的答案是**絕對是!**。 –