Frage

gestartet Gerade heute einige Entwickler mit Facebook SDK, und ich kann die Logik nicht herausfinden, folgte die Mitglieder des expando Objekts auf die Felder in der Graph API Objekten im Beispiel unten zu verknüpfen, die von Facebook C # SDK docs genommen wurde:

   public ActionResult RestFacebookPage()
   {
      FacebookApp app = new FacebookApp();
      dynamic parameters = new ExpandoObject();
      parameters.page_ids = "85158793417";
      parameters.method = "pages.getInfo";
      parameters.fields = "name";
      dynamic result = app.Api(parameters);
      return View("FacebookPage", result);
   }

Ich mache die page_ids und Felder verstehen, aber nicht pages.getInfo. Es wäre toll, wenn mir hier jemand aufklären könnte und mir sagen, wo in der Dokumentation i eine Referenz finden kann, dass führt mich dazu ....

Vielen Dank!

War es hilfreich?

Lösung

Nicht sicher verstehe ich, was Sie fragen, aber es ist ein recht ordentliches Beispiel über php übersetzen Book-c # -SDK über auf ihrem Projektseite . Dann können Sie einfach direkt auf die offizielle Facebook-Entwickler-Dokumentation nachschlagen.

Wenn Sie mehr ab fragen: „Wie wird dies umgesetzt“ Art von Frage, der beste Weg, dies meiner Meinung nach zu tun ist, um die Linie zu brechen app.Api enthält und von dort nur Schritt für Schritt durch den Code. Im Api Verfahren wird geprüft, ob die Parameter Wörterbuch einen Schlüssel „Methode“ enthält. Wenn ja, Zahlen die sdk der Ruf nach der alten Rest api gebunden ist, nicht der Graph api. Einige Stack-Frames senken wir den Code finden, die URL macht:


protected virtual Uri GetUrl(string name, string path, IDictionary parameters)
{
  Contract.Requires(!String.IsNullOrEmpty(name));
  Contract.Ensures(Contract.Result() != default(Uri));

  if (_domainMaps[name] == null)
  {
    throw new ArgumentException("Invalid url name.");
  }

  UriBuilder uri = new UriBuilder(_domainMaps[name]);
  if (!String.IsNullOrEmpty(path))
  {
    if (path[0] == '/')
    {
      if (path.Length > 1)
      {
        path = path.Substring(1);
      }
      else
      {
        path = string.Empty;
      }
    }
    if (!String.IsNullOrEmpty(path))
    {
      uri.Path = UriEncoder.EscapeDataString(path);
    }
  }
  if (parameters != null)
  {
    uri.Query = parameters.ToJsonQueryString();
  }
  return uri.Uri;
}

Sie sollten wahrscheinlich in diesem Verfahrensschritt selbst zu sehen, was die Variablen halten, und es sollte für Sie Sinn machen. Die Quelle ist immer die beste Dokumentation. Hoffe, das hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top