Step-1: Download Google data API setup from the specified URL
Or you can directly download with the following
That Set Up will installs set of Google Data dll’s (Google.GData.Apps.dll, Google.GData.Client.dll, Google.GData.Contacts.dll, Google.GData.Extensions.dll) into client installed Machine, you should collect that dll’s for your program.
Step-2: Design our aspx page (Default.aspx) by using with the following UI as simple scenario.
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>IMport Gmail Contacts</title> </head> <body> <form id="form1" runat="server"> <div> <table> <tr> <td> UserName</td> <td> <asp:TextBox ID="txtgmailusername" runat="server"></asp:TextBox> </td> </tr> <tr> <td> Password</td> <td> <asp:TextBox ID="txtpassword" runat="server" TextMode="Password"></asp:TextBox> </td> </tr> <tr> <td> </td> <td> <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" /> </td> </tr> </table> </div> <div> <asp:GridView ID="gvmails" runat="server"></asp:GridView> </div> </form> </body> </html> |
Step-4:
A) Add namespace these namespace to your code behind
using Google.GData.Contacts; using Google.GData.Client; using Google.GData.Extensions; using Google.Contacts; |
B) After that write following code in code behind
public static DataSet GetGmailContacts(string App_Name, string Uname, string UPassword)
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
DataColumn C2 = new DataColumn();
C2.DataType = Type.GetType("System.String");
C2.ColumnName = "EmailID";
dt.Columns.Add(C2);
RequestSettings rs = new RequestSettings(App_Name, Uname, UPassword);
rs.AutoPaging = true;
ContactsRequest cr = new ContactsRequest(rs);
Feed<Contact> f = cr.GetContacts();
foreach (Contact t in f.Entries)
{
foreach (EMail email in t.Emails)
{
DataRow dr1 = dt.NewRow();
dr1["EmailID"] = email.Address.ToString();
dt.Rows.Add(dr1);
}
}
ds.Tables.Add(dt);
return ds;
}
protected void Button1_Click(object sender, EventArgs e)
{
DataSet ds = GetGmailContacts("MyNetwork Web Application!", txtgmailusername.Text, txtpassword.Text);
gvmails.DataSource = ds;
gvmails.DataBind();
}
DEMO