ホームページ > バックエンド開発 > C++ > c#でFacebookグラフAPI JSONを降らせたときに、「プリミティブオブジェクトが無効」エラーを解決する方法は?

c#でFacebookグラフAPI JSONを降らせたときに、「プリミティブオブジェクトが無効」エラーを解決する方法は?

Barbara Streisand
リリース: 2025-02-02 07:01:08
オリジナル
709 人が閲覧しました

How to Resolve

トラブルシューティングC#JSON降脱指定エラー

Facebook Graph API(Friends List)からのJSON応答をゆるくしながら、「プリミティブオブジェクトに遭遇すると「プリミティブオブジェクトが無効」エラーが発生しますか?このガイドはソリューションを提供します

1。 C#クラスの構造:

JSONデータを正しくマッピングするには、一致するC#クラスを定義します。 構造は、JSONのネストされたオブジェクトと配列をミラーリングする必要があります。

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

public class FacebookFriend
{
    public string id { get; set; }
    public string name { get; set; }
}
ログイン後にコピー

による脱気質化 JavaScriptSerializer

)を使用して、JSON文字列を定義されたクラス構造に脱色します。

JavaScriptSerializerSystem.Web.Script.Serialization3。コードの例と出力:

FacebookFriendsResponse facebookFriends;

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

using (var js = new System.Web.Script.Serialization.JavaScriptSerializer())
{
    facebookFriends = js.Deserialize<FacebookFriendsResponse>(result);
}
ログイン後にコピー

プロセスを示す完全な例:

output:

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}");
    }
}
ログイン後にコピー

この改訂されたアプローチにより、JSONデータの正確なマッピングが保証され、「プリミティブオブジェクトが無効」エラーを防ぎます。 脱出プロセス中に潜在的な例外を処理することを忘れないでください。 新しい.NETプロジェクトについては、より堅牢なJSONハンドリングにを使用することを検討してください。

以上がc#でFacebookグラフAPI JSONを降らせたときに、「プリミティブオブジェクトが無効」エラーを解決する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート