2 回答

TA貢獻1858條經驗 獲得超8個贊
為了實現您的目標,您應該創建一個類來保存您從數據庫中檢索到的數據。在我的例子中,我調用了它GameObject,它的定義如下。
public class GameObject
{
public int Id { get; set; }
public string Uid { get; set; }
public int Bet { get; set; }
public string Game { get; set; }
}
從數據庫中檢索信息后,您需要運行類似于以下的代碼。
var items = new List<GameObject>();
while (reader.Read())
{
items.Add(new GameObject
{
Id = (int)reader["id"],
Uid = (string)reader["uid"],
Bet = (int)reader["bet"],
Game = (string)reader["game"]
});
}
// Return the jsonPacket which will contain all the items in json format.
var jsonPacket = JsonConvert.SerializeObject(items);
為了使其正常工作,您需要從 nuget 中引用 Newtonsoft.Json 庫。打開你的包管理器控制臺并輸入以下命令:Install-Package Newtonsoft.Json它會為你設置它。在我們代碼的頂部,您需要using Newtonsoft.Json;能夠使用庫中的類來序列化為 Json。在接收端,您可以將字符串傳遞給JsonConvert.DeserializeObject<T>(),您將取回對象列表。

TA貢獻1842條經驗 獲得超22個贊
您可以使用objects 和匿名類型的列表。還有一個 JSON 序列化程序,System.Web.Script.Serialization.JavaScriptSerializer如果您將System.Web.Extensions程序集添加到您的引用中,則包含該序列化程序。
List<object> list = new List<object>();
while (reader.Read()) {
list.Add(new { id = (int)reader["id"],
uid = (string)reader["uid"],
bet = (int)reader["bet"],
game = (string)reader["game"], });
}
string json = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(list);
- 2 回答
- 0 關注
- 170 瀏覽
添加回答
舉報