Get Facebook Likes and Comments on page using Graph API in ASP.Net

Last Reply one year ago By Mudassar

Posted one year ago

I want to check facebook share, like comment in asp and my code is given below.

code for my .aspx file

 

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Get facebook shares, comments, likes count of urls</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.2.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#btnurl').click(function() {
var url = $('#txturl').val();
document.getElementById('tbDetails').style.display = 'block';
$.ajax({
type: "POST",
url: "WebService.asmx/BindDatatable",
data: "{urltxt:'" + url + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data) {
for (var i = 0; i < data.d.length; i++) {
$("#tbDetails").append("<tr><td>" + data.d[i].Url + "</td><td>" + data.d[i].SharedCount + "</td><td>" + data.d[i].LikeCount + "</td><td>" + data.d[i].CommentCount + "</td><td>" + data.d[i].ClickCount + "</td><td>" + data.d[i].TotalCount + "</td></tr>");
}
},
error: function(result) {
alert("Error");
}
});
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<table>
<tr>
<td><b>Enter Url:</b></td>
<td><input type="text" id="txturl" /> </td>
</tr>
<tr>
<td></td>
<td><input type="button" id="btnurl" value="Get Url Count" /> </td>
</tr>
</table>
</div>
<div>
<table id="tbDetails" cellpadding="1" cellspacing="1" style="border:solid 1px #000000; display:none">
<thead style="background-color:#DC5807; color:White; font-weight:bold">
<tr>
<td>URL</td>
<td>Shared Count</td>
<td>Likes Count</td>
<td>Comments Count</td>
<td>Clicks Count</td>
<td>Total Count</td>
</tr>
</thead>
</table>
</div>
</form>
</body>
</html>

code for my WebService.asmx file

 

using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Net;
using System.Web.Services;

/// <summary>
/// Summary description for AutoCompleteService
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
[System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {
[WebMethod]
public UrlDetails[] BindDatatable(string urltxt)
{
List<UrlDetails> details = new List<UrlDetails>();
WebClient web = new WebClient();
string url = string.Format("https://api.facebook.com/method/fql.query?query=SELECT url, share_count, like_count, comment_count, total_count, click_count FROM link_stat where url='" + urltxt + "'");
string response = web.DownloadString(url);
DataSet ds = new DataSet();
using (StringReader stringReader = new StringReader(response))
{
ds=new DataSet();
ds.ReadXml(stringReader);
}
DataTable dt = ds.Tables["link_stat"];
foreach (DataRow dtrow in dt.Rows)
{
UrlDetails website = new UrlDetails();
website.Url = dtrow["url"].ToString();
website.LikeCount = dtrow["like_count"].ToString();
website.SharedCount = dtrow["share_count"].ToString();
website.CommentCount = dtrow["comment_count"].ToString();
website.ClickCount = dtrow["click_count"].ToString();
website.TotalCount = dtrow["total_count"].ToString();
details.Add(website);
}
return details.ToArray();
}
public class UrlDetails
{
public string Url { get; set; }
public string SharedCount { get; set; }
public string LikeCount { get; set; }
public string CommentCount { get; set; }
public string ClickCount { get; set; }
public string TotalCount { get; set; }
}
}

code working fine but this code get value from html textbox and work on html button click but i want to get url from asp textbox and want to count on asp button click. Can anyone help me to edit this code? Thanks in advance and sorry for my bad english.

You are viewing reply posted by: Mudassar one year ago.