Facebook C#SDK v6 - 如何发布图表操作?

Cha*_*son 5 facebook-graph-api facebook-c#-sdk

寻找有关使用SDK的v6发布开放图表操作的一些帮助.我已经淘了几天了,找不到任何如何做到这一点的例子.到目前为止,我有:

protected void btnDyno_Click(object sender, EventArgs e)
    {
        FacebookSDKInterface fbData = new FacebookSDKInterface();
        var fb = new FacebookClient(fbData.FacebookAccessToken);

        dynamic parameters = new ExpandoObject();
        parameters.appnamespace = "thedynoroom";
        parameters.action = "added";
        parameters.object_name = "dyno_run";
        parameters.object_url = "http://thedynoroom.com/DesktopModules/Incite/InciteCore/FBObject.aspx";

        try
        {
            dynamic result = fb.Post("me/", parameters);

            lblPostMessageResult.Text = result;
            txtMessage.Text = string.Empty;
        }
        catch (FacebookApiException ex)
        {
            lblPostMessageResult.Text = ex.Message;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我知道这是不正确的,因为我只是在猜测,因为我无法找到任何关于此的文档.除了http://csharpsdk.org之外还有其他文档吗?

在此先感谢您的帮助!乍得

更新:好的,终于想通了......如果,在你的Facebook开发人员图表仪表板中,你的行动的获取代码链接如下所示:

curl -F 'access_token=blahblahblah' \
 -F 'dyno_run=http://samples.ogp.me/266692056752346' \
    'https://graph.facebook.com/me/thedynoroom:add'
Run Code Online (Sandbox Code Playgroud)

然后你的代码应该是这样的:

        dynamic parameters = new ExpandoObject();
        parameters.dyno_run = "http://samples.ogp.me/266692056752346";

        try
        {
            dynamic result = fb.Post("me/thedynoroom:add", parameters);

            lblPostMessageResult.Text = result;
            txtMessage.Text = string.Empty;
        }
Run Code Online (Sandbox Code Playgroud)

请注意,在"parameters.xxxxxxx"中,xxxxx = =您的操作名称.

现在我只需要弄清楚如何解析JSON结果:)

Cha*_*son 0

请参阅上面更新下的答案。