Facebook广告线索检索asp.net [英] Facebook Ad Leads retrieval asp.net

查看:260
本文介绍了Facebook广告线索检索asp.net的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有办法可以在asp.net中从Lead_ID读取广告主导数据?我看到有PHP的例子,但没有C#的SDK。不幸的是我必须使用Asp.net,不能使用任何其他技术

Is there a way I can read Ad leads data from Lead_ID in asp.net? I see there are examples of PHP but there is no SDK for C#.Unforunately I have to use Asp.net and cannot use any other technologies

任何建议是高度赞赏

推荐答案

您可以使用facebook sdk c#和

You can use facebook sdk c# and

var fb = new FacebookClient
            {
                AccessToken ="token"
            };
            var json = fb.Get("page_id or ad_id/leadgen_forms");
            var forms = JsonConvert.DeserializeObject<FormsLeads>(json.ToString());
            foreach (var form in forms.data)
            {
                var jsonre = fb.Get(form.id + "/leads");
                var leads = JsonConvert.DeserializeObject<Leads>(jsonre.ToString());
                while (leads.paging != null)
                {
                    foreach (var lead in leads.data)
                    {
                        var leadnovo = new Models.Lead();
                        leadnovo.CamposExtras.Add(new CampoExtra { Nome = "idfacebook", Valor = lead.id });
                        leadnovo.DataCadastro = lead.created_time;

                        foreach (var t in lead.field_data)
                        {
                            if (t.name == "full_name")
                            {
                                leadnovo.Nome = t.values.FirstOrDefault();
                            }
                            else
                                if (t.name == "email")
                                {
                                    leadnovo.Email = t.values.FirstOrDefault();
                                }
                                else
                                    if (t.name == "phone_number")
                                    {
                                        leadnovo.Celular = t.values.FirstOrDefault();
                                    }
                                    else
                                    {
                                        leadnovo.CamposExtras.Add(new CampoExtra()
                                        {
                                            Nome = t.name,
                                            Valor = t.values.FirstOrDefault()

                                        });
                                    }
                        }
                        if (db.Leads.FirstOrDefault(c => c.Email == leadnovo.Email) == null)
                        {
                            db.Leads.Add(leadnovo);
                            db.SaveChanges();
                        }
                    }
                    if (leads.paging != null)
                    {
                        jsonre = fb.Get(form.id + "/leads?after=" + leads.paging.cursors.after);
                        leads = JsonConvert.DeserializeObject<Leads>(jsonre.ToString());
                    }
                }
            }
        }

类对于反序列化

 public class Cursors
{
    public string before { get; set; }
    public string after { get; set; }
} 
public class Field_Data
    {
        public string name { get; set; }
        public string[] values { get; set; }
    }


 public class FormsLeads
    {
        public Formulario[] data { get; set; }
        public Paging paging { get; set; }
    }
 public class Formulario
    {
        public string id { get; set; }
        public string leadgen_export_csv_url { get; set; }
        public string locale { get; set; }
        public string name { get; set; }
        public string status { get; set; }
    }
 public class Lead
    {
        public DateTime created_time { get; set; }
        public string id { get; set; }
        public Field_Data[] field_data { get; set; }
    }
public class Leads
    {
        public Lead[] data { get; set; }
        public Paging paging { get; set; }
    }
public class Paging
    {
        public Cursors cursors { get; set; }
    }

这篇关于Facebook广告线索检索asp.net的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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