2012-04-03 55 views
5

寻找使用SDK的v6发布开放图形动作的一些帮助。我一直在搜寻几天,但找不到如何做到这一点的任何例子。到目前为止,我有:Facebook C#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; 
     } 
    } 

我知道这是不正确的,因为我只是猜测,因为我无法找到这个任何文件明确。除http://csharpsdk.org以外还有其他文档吗?

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

UPDATE:好了,想通它终于... 如果,当你在Facebook开发图形仪表盘,获取代码链接为您的操作是这样的:

curl -F 'access_token=blahblahblah' \ 
-F 'dyno_run=http://samples.ogp.me/266692056752346' \ 
    'https://graph.facebook.com/me/thedynoroom:add' 

那么你的代码看起来应该像这样:

 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; 
     } 

请注意,在“parameters.xxxxxxx”中,xxxxx是=您的操作名称。

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

+0

虽然你如何传递真实的元数据?您正在引用示例元数据。 – 2012-04-25 04:54:06

+0

@ simon.d - 只是您想要发布的对象的URL的URL,即配方详细信息页面(与其文档示例保持一致)。例如:Dim dicFBPostParams As New Dictionary(Of String,Object)()
dicFBPostParams.Add(YOUROBJECT,您的对象网页的URL)
dynamic result = fb.Post(“me/YOURAPPANMESPACE:YOUACTION”,dicFBPostParams); – 2012-05-24 06:38:05

+0

好的,所以对象必须由我的服务器托管? – 2012-05-29 22:08:46

回答

0

下UPDATE见上面的回答。

相关问题