簡體   English   中英

Null class 反序列化時 Json C#

[英]Null class when deserializing Json C#

我有這個 PHP

            if ($result->num_rows === 1) {
                    $sql = ("SELECT username, email, plan, activationdate, terminationdate FROM users WHERE username = '$username' LIMIT 1");
$res = mysqli_query($conn,$sql);
if ($res->num_rows === 1) {
while($row = mysqli_fetch_object($res)){
$arr = array( $row);
echo json_encode($arr);

正確返回此 json [{"username":"xxxxx","email":"xxxxxx","plan":"0","activationdate":"","terminationdate":""}]

現在在 c# 我嘗試使用List<Information> resinfo = JsonConvert.DeserializeObject<List<Information>>(str2);反序列化並返回 null 值

請注意,在圖片Null 結果中,但 json 字符串按預期返回值Json 字符串

這是我的 class

public class Information
{

    public static string username { get; set; }
    public static string email { get; set; }
    public static string plan { get; set; }
    public static string activationdate { get; set; }
    public static string terminationdate { get; set; }
}

當我嘗試反序列化到 class 時,為什么會得到 null 以及如何正確反序列化?

值得一提的是,我試過這個var json = JsonConvert.DeserializeObject<List<Information>>(str2); 結果相同

這是因為您Information class 中的所有屬性都是static 刪除 static 關鍵字並重試。

JsonConvert.DeserializeObject將僅設置實例屬性,因此它們不能聲明為 static。

執行后查看removedFines變量(如您的圖像中所示)。

暫無
暫無

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

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