C# 将参数传递给FB Api()方法时出错
我有以下代码获取我的朋友列表,其中包含一些要返回的特定字段C# 将参数传递给FB Api()方法时出错,c#,facebook,facebook-graph-api,facebook-c#-sdk,C#,Facebook,Facebook Graph Api,Facebook C# Sdk,我有以下代码获取我的朋友列表,其中包含一些要返回的特定字段 public ActionResult Test() { fbApp = new FacebookApp(); authorizer = new CanvasAuthorizer(fbApp); authorizer.Perms = requiredAppPermissions; if (fbApp.Session != null) { dynamic friendsFields
public ActionResult Test()
{
fbApp = new FacebookApp();
authorizer = new CanvasAuthorizer(fbApp);
authorizer.Perms = requiredAppPermissions;
if (fbApp.Session != null)
{
dynamic friendsFields = new ExpandoObject();
friendsFields.fields = "id,name,location,bio,gender,religion,activities";
JsonObject data = fbApp.Get("/me/friends", friendsFields);
ViewData["friends"] = data["data"] as JsonArray;
return View();
}
}
我要的是id、姓名、地点、生物、性别、宗教、活动字段,但结果并没有提交所有这些字段。只返回id、姓名、性别,这让人怀疑出了什么问题。。。如果我尝试使用浏览器获取相同的数据并传递字段,结果将返回所有请求的字段:
URL: https://graph.facebook.com/me/friends?fields=id,name,bio,gender,picture,religion,activities&access_token=...
"data": [
{
"id": "data_data_data",
"name": "data_data_data",
"bio": "data_data_data",
"gender": "data_data_data",
"religion": "data_data_data",
"picture": "data_data_data",
"activities": {
"data": [
{
"name": "data_data_data",
"category": "data_data_data",
"id": "data_data_data",
"created_time": "data_data_data"
}
]
}
},
{
"id": "data_data_data",
"name": "data_data_data",
"bio": "data_data_data",
"gender": "data_data_data",
"picture": "data_data_data"
}
]
}
有人知道这里可能出了什么问题吗?它可能是API吗?我使用的是最新版本4.1.1
蒂亚 您必须强制转换Get方法的结果,或者动态访问它。下面是修改后的代码,授权也已修复
[CanvasAuthorize(Perms="user_friends")]
public ActionResult Test()
{
var fbApp = new FacebookApp();
dynamic friendsFields = new ExpandoObject();
friendsFields.fields = "id,name,location,bio,gender,religion,activities";
dynamic result = fbApp.Get("/me/friends", friendsFields);
var data = result.data as JsonArray;
ViewData["friends"] = data;
return View();
}
嗨,内森!你的代码和我的不一样吗?顺便提一下在视图代码中,如何获取字段?谢谢