首頁 > 後端開發 > C++ > 當在C#中挑選Facebook Graph API JSON時,如何解決'原始對象無效”錯誤?

當在C#中挑選Facebook Graph API JSON時,如何解決'原始對象無效”錯誤?

Barbara Streisand
發布: 2025-02-02 07:01:08
原創
681 人瀏覽過

How to Resolve

>故障排除c#json deerialization錯誤

>遇到“原始對像是無效的”錯誤,同時從Facebook Graph API(朋友列表)的JSON響應中進行了驗證?本指南提供了一個解決方案。

1。構造您的C#類:

>正確映射JSON數據,定義匹配的C#類。 結構必須鏡像JSON的嵌套對象和數組。

public class FacebookFriendsResponse
{
    public List<FacebookFriend> data { get; set; }
}

public class FacebookFriend
{
    public string id { get; set; }
    public string name { get; set; }
}
登入後複製

2。用JavaScriptSerializer>:

進行驗證

>使用JavaScriptSerializer(在System.Web.Script.Serialization中使用)將JSON字符串置於定義的類結構中。 >

FacebookFriendsResponse facebookFriends;

// ... obtain 'result' string from Facebook API call ...

using (var js = new System.Web.Script.Serialization.JavaScriptSerializer())
{
    facebookFriends = js.Deserialize<FacebookFriendsResponse>(result);
}
登入後複製

3。代碼示例和輸出:

這是一個完整的示例,展示了該過程:

string json = @"{""data"":[{""id"":""518523721"",""name"":""ftyft""}, {""id"":""527032438"",""name"":""ftyftyf""}, {""id"":""527572047"",""name"":""ftgft""}, {""id"":""531141884"",""name"":""ftftft""}]}";

using (var js = new System.Web.Script.Serialization.JavaScriptSerializer())
{
    FacebookFriendsResponse facebookFriends = js.Deserialize<FacebookFriendsResponse>(json);

    foreach (var friend in facebookFriends.data)
    {
        Console.WriteLine($"id: {friend.id}, name: {friend.name}");
    }
}
登入後複製

輸出:

<code>id: 518523721, name: ftyft
id: 527032438, name: ftyftyf
id: 527572047, name: ftgft
id: 531141884, name: ftftft</code>
登入後複製
這種修訂的方法確保了JSON數據的準確映射,防止“原始對象無效”錯誤。 請記住在避難過程中處理潛在的例外。 對於較新的.NET項目,請考慮使用

以進行更強大的JSON處理。

以上是當在C#中挑選Facebook Graph API JSON時,如何解決'原始對象無效”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板