Facebook C#SDK上载带有标签的照片 [英] Facebook C# SDK Upload Photos with Tagging

查看:73
本文介绍了Facebook C#SDK上载带有标签的照片的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用facebook c#sdk标记照片.

How to Tagging a photos using facebook c# sdk.

这是我的代码(上传图片):

This is my code (Upload image):

    var fbApp = new FacebookClient(Session["xAccessToken"].ToString());
    string xfilename = MergedCombinedImage.ImageUrl;
    xfilename = xfilename.Replace("images/temp/", "");
    var fbUpl = new Facebook.FacebookMediaObject
    {
        FileName = xfilename,
        ContentType = "image/jpg"
    };

    var bytes = System.IO.File.ReadAllBytes(Server.MapPath(MergedCombinedImage.ImageUrl));
    fbUpl.SetValue(bytes);
    var photoDetails = new Dictionary<string, object>();
    photoDetails.Add("message", "test"); 
    photoDetails.Add("image", fbUpl); 
    var fbResult = fbApp.Post(@"/" + albumID + @"/photos", photoDetails);
    var result = (IDictionary<string, object>)fbResult;
    var photoID = result["id"];

谢谢

pongpang

推荐答案

要进行标记,您可以这样做(一个简单的例子):

To tag you can do that (a simple exemple):

private const string ExtendedPermissions = "user_about_me,user_photos,publish_stream";

[HttpPost]
[FacebookAuthorize(Permissions = ExtendedPermissions, LoginUrl = "/Home/LogOn?ReturnUrl=~/Home")]
public ActionResult MensagemPost(string message)
{
    var fb = new FacebookWebClient();
    dynamic me = fb.Get("me");

    string friendId_1 = // get the first one friend id
    string friendId_2 = // get the second one friend id

    var tags = new[] 
    { 
        new { tag_uid = friendId_1, x = 20, y = 20 },
        new { tag_uid = friendId_2, x = 40, y = 40 },
        new { tag_uid = (string)me.id, x = 60, y = 60 }
    };

    dynamic parameters = new ExpandoObject();
    parameters.message = message;
    parameters.tags = tags;
    parameters.url = "http://1.bp.blogspot.com/-evheT51sfeM/TlO_wZ8YDqI/AAAAAAAAA8I/fjlg0G8AgMY/s1600/The-best-top-hd-desktop-naruto-shippuden-wallpaper-naruto-shippuden-wallpapers-hd-11.jpg";

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

    return RedirectToAction("Index", new { success = true });
}

这篇关于Facebook C#SDK上载带有标签的照片的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆