0

Facebook c# sdk を使用している Facebook ウォールに写真を投稿しようとしています。私は次のコードを使用しました:

    var fb = new FacebookClient(App.AccessToken);
            var parameters = new Dictionary<string, object>
   {
        { "message", "Olav is testing Facebook C# SDK" },
        { "picture", "http://download.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=facebooksdk&DownloadId=170794&Build=17672" },
        { "name", "Facebook C# SDK" },
        { "caption", "http://facebooksdk.codeplex.com/" },
        { "description", "The Facebook C# SDK helps .Net developers build web, desktop, Silverlight, and Windows Phone 7 applications that integrate with Facebook." },
        { "privacy", new Dictionary<string, object>
            {
                { "value",  "SELF" }
            }
        }
    };

            fb.PostAsync("me/feed", parameters);

指定された画像の URL に対して正常に動作しています。しかし、電話アプリを使用してユーザーが作成した写真にしたい場合はどうでしょうか。画像フィールドに URL 以外の値を指定すると、エラーが発生します。誰かがこれを行う方法を教えてもらえますか、またはアプリからFacebookウォールに画像を投稿する他の方法はありますか?

4

1 に答える 1

1

それは、ローカルの写真を共有する方法ではありません。現在行っていることは、カスタム画像、キャプション、説明などのリンクを共有することです.

写真をc# sdkで共有するには、次を試してください。

    var fb = new FacebookClient(App.AccessToken);       

    var parameters = new Dictionary<string, object>();
    parameters["name"] = "Description for the pic";
    parameters["TestPic"] = new FacebookMediaObject
    {
        ContentType = "image/jpeg",
        FileName = "photo_name.jpg"

    }.SetValue(File.ReadAllBytes(Server.MapPath("~\\Images\\photo_name.jpg")));

    dynamic res = fb.Post("me/Photos", parameters);

    // res.id contains the returned photo id

Server.MapPathを写真の URI に置き換えます。
パラメーターTestPicは何でもかまいません。ファイルをアップロードするときに multipart/form-data の名前として使用されます。

それでも問題がある場合は、この詳細なチュートリアルに従うことができます。

于 2013-07-11T08:13:29.100 に答える