.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
 
Sign In
Register
 
Win Surprise Gifts!!!
Congratulations!!!


Top 5 Contributors of the Month
david stephan

Home >> Articles >> ASP.NET >> Post New Resource Bookmark and Share   

 Subscribe to Articles

Retrieve Gmail Contacts Name with Email in ASP.NET

Posted By:Sanjeeb Lenka       Posted Date: September 13, 2013    Points: 200    Category: ASP.NET    URL: http://www.dotnetspark.com  

This article I am going to describe how to retrieve Gmail contact with Name and Mail id in asp net. Here I will describe how to communicate with Gmail using Google API.
 

Introduction

This Article I am going to describe how to retrieve gmail contact with Name and Mail id in asp net.  Here I will describe how to communicate with Gmail using Google API.

Description

As it is a third party software for this we required some third party dll to be referenced to our application which will communicate with Gmail server.

For this we have to download the Google API Set up from below link

http://code.google.com/p/google-gdata/

Or you can direct download from this link

https://google-gdata.googlecode.com/files/Google_Data_API_Setup_2.1.0.0.msi

Install this setup you will get these dll files in your Pc

  1. Google.GData.Apps.dll
  2. Google.GData.Client.dll
  3. Google.GData.Contacts.dll
  4. Google.GData.Extensions.dll

Collect these dll's.

Design

Now design your design the screen as below screen

index.jpg

Or Copy the source code below

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<
head runat="server">
    <title></title>
</head>
<
body>
    <form id="form1" runat="server">
    <div>
        <table align="center" width="100%">
            <tr>
                <td>
                    <table align="center">
                    <tr></tr>
                        <tr>
                            <td>
                                <asp:Label ID="Label1" runat="server" Text="User name"></asp:Label>
                            </td>
                            <td>
                                <asp:TextBox ID="txtName" runat="server" Width="200px"></asp:TextBox>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <asp:Label ID="Label2" runat="server" Text="Password"></asp:Label>
                            </td>
                            <td>
                                <asp:TextBox ID="txtPwd" runat="server" TextMode="Password" Width="200px"></asp:TextBox>
                            </td>
                        </tr>
                        <tr>
                            <td colspan="2" align="center">
                                <asp:Button ID="btnLogin" runat="server" Text="Get Contact" OnClick="btnLogin_Click" />
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
            <tr>
                <td align="center">
                    <asp:GridView ID="gvContacts" runat="server" EmptyDataText="No contacts" AllowPaging="true"
                        Width="50%" PageSize="15" AutoGenerateColumns="false"                        OnPageIndexChanging="gvContacts_PageIndexChanging">
                        <Columns>
                            <asp:TemplateField HeaderText="Contact Name">
                                <ItemTemplate>
                                    <asp:Label ID="lblName" runat="server" Text='<%#Eval("Name") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle Width="200px" />
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Contact Email">
                                <ItemTemplate>
                                    <asp:Label ID="lblEmail" runat="server" Text='<%#Eval("EmailID") %>'></asp:Label>
                                </ItemTemplate>
                                <ItemStyle Width="100px" />
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>
                </td>
            </tr>
        </table>
    </div>
    </form>
</body>
</
html>

 Next add reference of Google gdata dll to your website.

  1. Google.GData.Apps.dll
  2. Google.GData.Client.dll
  3. Google.GData.Contacts.dll
  4. Google.GData.Extensions.dll

And write the below code .cs file

using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using Google.GData.Contacts;
using Google.GData.Client;
using Google.GData.Extensions;
using Google.Contacts;

 public partial class _Default : System.Web.UI.Page
{
 public DataSet GetGmailContacts(string AppName, string Uname, string UPassword)

    {
        DataSet ds = new DataSet();
        DataTable dt = new DataTable();

        dt.Columns.Add(new DataColumn("EmailID", typeof(string)));
        dt.Columns.Add(new DataColumn("Name", typeof(string)));
        RequestSettings rs = new RequestSettings(AppName, 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();
                dr1["Name"] = t.Title.ToString();
                dt.Rows.Add(dr1);
            }
        }
        ds.Tables.Add(dt);
        return ds;
    }
     protected void Page_Load(object sender, EventArgs e)
    {
    }

     protected void btnLogin_Click(object sender, EventArgs e)
    {
        DataSet ds = GetGmailContacts("Gmail Contact Operations!", txtName.Text, txtPwd.Text);
        ViewState["Contact"] = ds;
        gvContacts.DataSource = ds;
        gvContacts.DataBind();
    }

    protected void gvContacts_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {

        DataSet ds = ViewState["Contact"] as DataSet;
        gvContacts.PageIndex = e.NewPageIndex;
        gvContacts.DataSource = ds;
        gvContacts.DataBind();
    }
}
 

Now build your Application. And enter Gmail id and password in the corresponding textbox

Click on Get Contact button it will show all your gmail Contact Name with Email.

index1.jpg

Any modification or problem Plz comment.


 Subscribe to Articles

     

Further Readings:

Responses

No response found. Be the first to respond this post

Post Comment

You must Sign In To post reply
Find More Articles on C#, ASP.Net, Vb.Net, SQL Server and more Here

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend