2012-07-10 81 views
0

我试图通过使用MVC3 C#上传照片到Facebook。代码运行成功,但照片未上传到Facebook。我正在添加ID和App Secret。我尝试了很多方法,并在很多天里努力工作,但结果为零。这里是我的控制器代码如何使用MVC3,C#在Facebook墙上上传图片?

[HttpPost] [HTTPGET]

public ActionResult Profile(HttpPostedFileBase file, FacebookOAuthResult facebookOAuthResult) { 
    dynamic args = new ExpandoObject(); 
    args = new Dictionary<string, object>(); 
    args["message"] = "hi"; 
    args["picture"] = "http://apps.facebook.com/Uploads/photos"; 
    string accesstoken=FacebookWebContext.Current.AccessToken; 
    FacebookClient fbApp = new FacebookClient(accesstoken); 
    try { 
    fbApp.Post("MYAPPID" + "/Photos", args); 
    } catch (FacebookOAuthException ex) { 
      // 
    } 
    // Verify that the user selected a file 
    if (file != null && file.ContentLength > 0) { 
    var path1 = Path.Combine(Server.MapPath("~/Content/uppoads"), file.FileName); 
    //file.SaveAs(path1); 
    fbApp.Post("MYAPPID" + "/photos", path1); 
    } 
    // redirect back to the index action to show the form once again 
    return RedirectToAction("Profile"); 
} 

谁能帮我找到解决办法?提前致谢。

回答

0

您正在发布照片的本地路径到Facebook,FB不知道它是什么。
您应该在Post主体中将照片作为二进制文件发布。

var media = new Facebook.FacebookMediaObject(); 
var filebytes = System.IO.File.ReadAllBytes(path1); 
media.SetValue(filebytes); 
fbApp.Post("248050331932489" + "/photos", media); 
+0

请您发送完整的代码为这个控制研究和.cshtml – siva 2012-07-12 05:06:01

+0

如何传递的Facebook墙上这些图片来自按钮字段 – siva 2012-07-19 10:25:17

+0

最后我成功我从我MVC3应用程序上传图片至Facebook – siva 2012-07-23 03:48:42

相关问题