0% found this document useful (0 votes)
93 views

Getting Started With Facebook... Not So Needed Introduction

Facebook Application Development -.NET Software Development - Generate Facebook Content using FBML. Greg Dubinovskiy shows how to build a more sophisticated Facebook Application. Application can interact with Facebook users and with a SQL Server database.

Uploaded by

rajee1234
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
93 views

Getting Started With Facebook... Not So Needed Introduction

Facebook Application Development -.NET Software Development - Generate Facebook Content using FBML. Greg Dubinovskiy shows how to build a more sophisticated Facebook Application. Application can interact with Facebook users and with a SQL Server database.

Uploaded by

rajee1234
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Title: Facebook Application Development - .

NET Software Development - Generate Facebook Content using FBML (part 1)


Author: Greg Dubinovskiy
Email: [email protected]
Environment: c# .NET
Keywords: Facebook Application Development - .NET Software Development - Generate Facebook Content using FBML
Level: Intermediate
Description: Facebook Application Development - .NET Software Development - Generate Facebook Content using FBML
Section Miscellaneous
SubSection General

Siccolo Development Articles - Facebook Application Development - .NET Software Development - Generate Facebook Content using FBML
- using FBML - using FBJS
Who Viewed Your Profile? Discover Who Searched for You, Went To Your Profile, and How Many Times www.SocialProfileTracker.com
Automation Software Reliable & Powerful Automation Software. Download Free Trial Now! www.AutomationAnywhere.com
Embedded Charts & Graphs Add dynamic charts & graphs to your applications. Free trial software. www.visualmining.com

table of contents:
Setup Facebook Using Using using FBJS Animation to Using <fb:friend-selector> with
Application <asp:GridView> <fb:dashboard> in show DIV ASP.NET and FBML
with FBML ASP.NET
Using <fb:editor> with Adding FBJS client- Using FBJS Dialogs Using <fb:iframe> with using FBJS AJAX with Sending notifications with
ASP.NET and FBML side validation ASP.NET and FBML ASP.NET/C # ASP.NET/C # and FBML

1. Getting started with Facebook... Not so needed introduction


There are plenty of resources out there that shows how to start developing Facebook application using ASP.NET/.NET environment. For
example Step-by-step Guide to Creating an Application and Creating a Facebook Application and many others. But how do you take that
"Hello, World" Facebook sample to the next level? Hellooooooo,world? "Don't leave me hanging"....

In this article, I will show (or will try to show) how to build a more sophisticated Facebook application that interacts with Facebook users
and with a SQL Server database.

As you may know, Facebook application is "hosted" within Facebook Canvas Page, and canvas page is within Facebook frame (kinda like
russian doll house, er?). Facebook application can be FBML or .... just take a look at Anatomy of a Facebook Application.
(When you're ready to develop your own Facebook Application, don't forget to "create" it first and request Application Key and
Application Secret in Facebook at Facebook Developers Application).
In this Facebook Application, I am using Facebook .NET Toolkit, found at Facebook Developer Toolkit library. And to use it - simply
reference it in your project, for example:
using Facebook;
using Facebook.WebControls;

public partial class _App : CanvasFBMLBasePage


{
...
...
}
* notice using CanvasFBMLBasePage base class

Multi Image Communication Delivering The Finest In Corporate Communication Events. Contact Us! www.MIG.cc
Free Website Templates Design Your Own Free Website Flash, Drag & Drop, Easy, Unique www.Wix.com/Free-Website-Builder
Free Faceb00k Layouts 1000's of Layouts to Choose From. Get them Now - All Free. pagerage.com

2. Developing Facebook Application with .NET - Create sample user presentation using ASP.NET
and FBML - building Facebook canvas page using ASP.NET and FBML
So, let's say I have data in SQL Server database:

and I want to display it in my Facebook Application, for example using GridView control, like this:
How do we go about developing this?

First (or not so first) thing first - create or add new application in Facebook Developers. I have mine setup as:

Now, open your favorite Visual Studio (I am using VS 2005), and start/create a new ASP.NET Web site. I am using C# in this article, but
you can adapt the code for VB.NET.
Don't forget to add references to Facebook Developer Toolkit library:

In first (and only) ASP.NET form (chances are it's called Default.aspx), open page and add GridView control to it.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="app.aspx.cs" Inherits="_App" %>
<!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>Facebook Test Applicatioin:Traveling Babies</title></head>

<!-- <body> -->


<form id="formDataContent" runat="server">
<asp:GridView ID="gridSelectObjects" runat="server" AutoGenerateColumns="true" style="width:80%">
<AlternatingRowStyle BackColor="#f7f7f7" />
</asp:GridView>
</form>
<!-- </body> -->
</html>
* Notice body element is commented. We're using FBML, and it will be hosted inside Facebook canvas, so no body.

Switch to "code view" and let's add some code:


using Facebook;
using Facebook.WebControls;
public partial class _App : CanvasFBMLBasePage
{
//keys for FBTestApplication:
private const string FACEBOOK_API_KEY = "xfxfxdx7xbx7xbxfxaxdxsiccolo";
private const string FACEBOOK_SECRET = "dx8xfx9x8x1xsiccolo2x4x1xfx2xdx";

//db interface:
private FacebookDB m_FacebookDB = null;

new protected void Page_Load(object sender, EventArgs e)


{
base.Api = FACEBOOK_API_KEY;
base.Secret = FACEBOOK_SECRET;
base.Page_Load(sender, e);

converted by W eb2PDFConvert.com
string facebookUserID = this.FBService.GetUserInfo().UserId;

try
{
bool result = false;
string connectInfo = Settings.ConnectInfo();
m_FacebookDB = new FacebookDB(facebookUserID, connectInfo);
string applicationUserID = String.Empty;
string applicationUserObjectID = String.Empty;
string objectType = String.Empty;
string objectDescription = String.Empty;
string errorInfo = String.Empty;

result = m_FacebookDB.GetApplicationUserID_withObjectInfo(out applicationUserID,


out applicationUserObjectID,
out objectType,
out objectDescription,
out errorInfo);
if (!result || applicationUserID == String.Empty)
{
this.labelFBDashboard.Text = "Failed to retrieve Application User:" + errorInfo;
return;
}

//show object list in a grid


result = ShowObjectListGrid(applicationUserID, out errorInfo);

}
catch (Exception)
{
throw (new System.Exception "Your mama off the train");
}

private bool ShowObjectListGrid(string applicationUserID, out string errorInfo)


{
errorInfo = String.Empty;

try
{
bool result = false;
DataSet objectList = null;// new DataSet("ObjectList");
result = m_FacebookDB.GetObjectList(applicationUserID,
out objectList,
out errorInfo);
// bind the data
this.gridSelectObjects.DataSource = objectList;

this.gridSelectObjects.ShowHeader = false;
//bind
this.gridSelectObjects.DataBind();

return result;
}

catch(Exception ex_show_grid)
{
errorInfo = ex_show_grid.Message;
return false;
}
}
}
Where FacebookDB is a middle-layer, to interface with SQL Server database.

Professional IT Services OPTiMize with Technology Consulting / Solutions / Staffing www.OPTiMO-it.com


Do More Than Just Track Monitor & control any computer. No hardware required. Free Demo. InterGuardSoftware.com
Applying for Disability? We Take Care Of the Government. You Have Enough To Worry About. www.BinderAndBinder.com

But, let's also explore options that FBML adds to your Facebook Application, so we can create a Facebook-alike application, something
like this:

where:
(1) is Facebook dashboard menu, created with fb:dashboard FBML element (more at fb:dashboard at Facebook Developers Wiki),
(2) is a result of using fb:create-button within fb:dashboard FBML element (more at fb:create-button at Facebook Developers
Wiki),
(3) is a result of using fb:dashboard FBML element
(4) is a GridView element

With FBML "approach", we can put FBML tags right into aspx page, or have web application generate them dynamically. To add
"Facebook dashboard", I am using the following code:
new protected void Page_Load(object sender, EventArgs e)
{
...
...
//FMBL part:
FBMLMaker fbmlMaker = new FBMLMaker(this.FBService.GetUserInfo());
//set dashboard
this.labelFBDashboard.Text = fbmlMaker.Dashboard();
...
...
}
Where labelFBDashboard is <asp:Label ID="labelFBDashboard" runat="server" Text="... fb-dashboard ..." ></asp:Label>,
and Dashboard() method:

public string Dashboard()


{
//for FBML generations can also be used StringBuilder();
//http://wiki.developers.facebook.com/index.php/Fb:dashboard
string fbDashboard = "<fb:dashboard>";
fbDashboard += "<fb:action href=\"http://www.siccolo.com/\">Developer Site</fb:action>";
//show greeting as a link..
fbDashboard += "<fb:action href=\"#\" >" + this.Greeting() + "</fb:action>";
//show application help link:
fbDashboard += "<fb:help href=\"http://www.siccolo.com/\">What do I do with this?!</fb:help>";
fbDashboard += "<fb:create-button href=\"http://www.siccolo.com/\">Take me away!</fb:create-button>";
fbDashboard += "</fb:dashboard>";
return fbDashboard;
}

converted by W eb2PDFConvert.com
Or you can simply add <fbml > tags right into your aspx page (see bellow using <fb:friend-selector/> element).

3. Developing Facebook Application with .NET - adding user-page interactions with FBML and
FBJS - allow to select a Friend
As you may know, you can use FBJS on FBML pages.

So, let's modify grid to add a link on each row:


<%@ Page Language="C#" AutoEventWireup="true" CodeFile="app.aspx.cs" Inherits="_App" %>
<!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>Facebook Test Applicatioin:Traveling Babies</title></head>


<!-- <body> -->
<form id="formDataContent" runat="server">
<asp:GridView ID="gridSelectObjects" runat="server" AutoGenerateColumns="false" style="width:80%">
<Columns>
<asp:TemplateField ItemStyle-Width='180px' ItemStyle-Wrap=false>
<ItemTemplate>
<a href="#" onclick="select_object(<%# Eval("object_id")%>, '<%# Eval("type")%>', '<%# Eval("description")%>');return false;"
style="color:Black;background-color:Transparent;border-color:Transparent;border-style:None;">
<img src="http://www.siccolo.com/fbtestappsiccolo/images/select.gif"
border="0"
align="center"
title="select <%# Eval("description")%>"/> select <%# Eval("description")%></a>
</ItemTemplate>
</asp:TemplateField>

</Columns>
<AlternatingRowStyle BackColor="#f7f7f7" />
</asp:GridView>
</form>

<!-- </body> -->


</html>
Notice calls to select_object() javascript (FBJS) for each row. So, when user clicks on "select..." link, on the grid row, page will display
selected row and will allow user to perform some action on selected item:

Selected information is displayed in its own DIV element:


<div id="data_selected_content1" style="display:none">

<span class="detached_label">Baby
<span id="spanSelectedObject1" style="font-weight: bold; font-style: italic; font-variant: normal;"></span>
needs:
<asp:DropDownList ID="listObjectAction1" runat="server" CssClass="listElement" ></asp:DropDownList>
...and then off to
<fb:friend-selector idname="textSelectedFriend" />
<asp:Button ID="buttonSend" runat="server" Text="Send" CssClass="inputsubmit" OnClick="buttonSend_Click" />
</span>
</div>

So, my javascript (FBJS) function:

<script>
function select_object(object_id , type, description)
{
Animation(document.getElementById('data_selected_content1')).to('height', 'auto').from('0px').to('width', 'auto').from('0px').to('opacity', 1).from(0).blind().show().go();
document.getElementById("spanSelectedObject1").setTextValue ( description) ;
document.getElementById("buttonSend").setValue ( "Send " + description) ;
}
</script>
Notice using Animation() to show DIV element - see FBJS/Animation for more information. As you can see, in order to change SPAN
innerText, I'm using setTextValue() method, and for a button, I'm using setValue().

To provide user with ability to select a Friend, we can add <fb:friend-selector idname="textSelectedFriend" /> FBML element
(more at Fb:friend-selector)

* Notice idname attribute of <fb:friend-selector> element - the name of the hidden form element that contains the user ID of the
selected friend when form is being submitted, as we will see later on.

The same section can be built using <fb:editor> element (see more at Fb:editor):

<div id="data_selected_content2" >


<fb:editor labelwidth="200">

<fb:editor-custom label="Baby">
<span id="spanSelectedObject2" style="font-weight: bold; font-style: italic; font-variant: normal;"></span>
</fb:editor-custom>

<fb:editor-custom label="Needs">
<asp:DropDownList ID="listObjectAction2" runat="server" CssClass="listElement" ></asp:DropDownList>
</fb:editor-custom>
<fb:editor-buttonset>
<fb:editor-button value="Send to Comrade"/>
</fb:editor-buttonset>

</fb:editor>
</div>

The result is:

4. Developing Facebook Application with .NET - submitting form information - adding client-

converted by W eb2PDFConvert.com
side validation - using FBJS dialogs
So, at this point we have a nice looking form that presents a list of items, allows user to select a Friend... But, it would be nice if the
appliction could pass that information back to us, a?

Do you remember the server-side button buttonSend I had:


<div id="data_selected_content1" style="display:none">
<span class="detached_label">Baby

<span id="spanSelectedObject1" style="font-weight: bold; font-style: italic; font-variant: normal;"></span>


needs:
<asp:DropDownList ID="listObjectAction1" runat="server" CssClass="listElement" ></asp:DropDownList>
...and then off to
<fb:friend-selector idname="textSelectedFriend" />
<asp:Button ID="buttonSend" runat="server" Text="Send" CssClass="inputsubmit" OnClick="buttonSend_Click" />
</span>

</div>

When user clicks on this button, page supposed to a) check user input - if a Friend is entered; and b) submit information back.
Let's check user input - when form is about to be submitted:
On apsx page, I added javascript (FBJS):
<script>
function displayError(title, message, context)
{
new Dialog(Dialog.DIALOG_CONTEXTUAL).setContext(context).showMessage(title, message );
}

function check_form(form)
{
if ( form == null) { form = document.getElementById('formDataContent');}

var params=form.serialize();
if (params.textSelectedFriend==null || params.textSelectedFriend=='' )
{
displayError("Error", "Please select a Comrade!" , document.getElementById('data_selected_content1') );
return false;
}
else
{
return true;
}
}
</script>
And, in the code:
new protected void Page_Load(object sender, EventArgs e)
{
...
ClientScript.RegisterOnSubmitStatement(this.GetType(), "sudmitformDataContent", "return check_form(this);");
...
}
Here, I'm using Dialogs provided by FBJS (see more at Dialogs), and the result is stunning!:

And if input passes validation check (in this example, we only check if user selects/enters a Friend), then page is submitted and we have
a chance to save selected data into the database. Hooray!:
protected void buttonSend_Click(object sender, EventArgs e)
{
string selectedFriendID = String.Empty;
try
{
selectedFriendID = Page.Request.Form["textSelectedFriend"].ToString();
}
catch
{
//oh-ho, no friend is selected!!!
return;
}
//save selected action and friend to database:
bool result = false;
string errorInfo = String.Empty;
string connectInfo = Settings.ConnectInfo();
string facebookUserID = this.FBService.GetUserInfo().UserId;
m_FacebookDB = new FacebookDB(facebookUserID, connectInfo);

string applicationUserID = this.textApplicationUserID.Value;


if ( applicationUserID == String.Empty)
{
this.labelFBDashboard.Text = "Application User ID is missing!";
return;
}

string applicationUserObjectID = this.textSelectedObject.Value;


if (applicationUserObjectID == String.Empty)
{
this.labelFBDashboard.Text = "Application Object ID is missing!";
return;
}
string selectedActionID = this.listObjectAction1.SelectedValue.ToString();
string expandedUserObjectActionText = String.Empty;
string notificationTextToFriend = String.Empty;
result = m_FacebookDB.DoObjectAction_And_Do_SendToFriend(applicationUserID,
applicationUserObjectID,
selectedActionID,
selectedFriendID,
out notificationTextToFriend,
out errorInfo);
if (!result)
{
this.labelFBDashboard.Text = "Failed to perform selected action!" + errorInfo;
return;
}
}
* Notice reference to Page.Request.Form["textSelectedFriend"] form field, from <fb:friend-selector> element. No, we didn't
create this element on the page, instead Facebook platform added it "dynamically".

You can also use other types of Dialogs, for example DIALOG_CONTEXTUAL:

To display such CONTEXTUAL dialog we can use "inline" javascript (FBJS):


<div id="data_selected_content1" style="display:none">

...
<a href="#" onclick="new Dialog(Dialog.DIALOG_CONTEXTUAL).setContext(this).showMessage('Selected Object', 'This is the object you\'ve selected'); return false;">
<span id="spanSelectedObject1" style="font-weight: bold; font-style: italic; font-variant: normal;"></span></a>

converted by W eb2PDFConvert.com
...
</div>

Or to display POPUP

5. Developing Facebook Application with .NET - using iframe in FBML


If you need to "insert" a page within your application, FBML canvas - you can use <fb:iframe> element (see more at Fb:iframe)
For example, I use <fb:iframe> element to reference a apsx page to retrieve user IP address - using
Request.ServerVariables["REMOTE_ADDR"] (remeber, that FBML application is within canvas, within Facebook... so you'll get something
like 204.15.23.168, which is IP address of Facebook server, not of your user). Then, based on given IP address I can display various
information, for example weather forecast:
In page code, to reference <fb:iframe> element:
...
<div style="text-align:right;position: relative;bottom:1%;width:99%">
<fb:iframe src="http://www.siccolo.com/fbtestappsiccolo/clientdata.aspx" style="width: 99%;height:135px" smartsize="false" frameborder="no">
</fb:iframe>
</div>
...
Very similar to using <iframe> HTML element.

6. Developing Facebook Application with .NET - using FBJS AJAX with ASP.NET/C# - display
dialog with dynamic content - using FBJS POPUP Dialogs with ASP.NET/C#
One of the feature of FBML and FBJS - ability to display standard dialogs (see above - Using FBJS Dialogs). We can use one of standard
dialogs to display dynamic content - for example, list of records from SQL Server database:
To do this, first of all I needed to add a link to main GridView (see above - Using <asp:GridView> with FBML):
...
<asp:GridView ID="gridSelectObjects" runat="server" AutoGenerateColumns="false" style="width:80%;text-align:center" align="center">
<Columns>
<asp:TemplateField ItemStyle-Width='180px' ItemStyle-Wrap=false>
<ItemTemplate>
<a href="#" onclick="select_object(<%# Eval("object_id")%>, '<%# Eval("type")%>', '<%# Eval("description")%>');return false;"
style="color:Black;background-color:Transparent;border-color:Transparent;border-style:None;">

<img src="http://www.siccolo.com/fbtestappsiccolo/images/select.gif"
border="0"
align="center"
title="select <%# Eval("description")%>"/> select <%# Eval("description")%></a>
</ItemTemplate>
</asp:TemplateField>

<asp:TemplateField ItemStyle-Width='180px' ItemStyle-Wrap=false>


<ItemTemplate>

<a href="#" onclick="show_object_info(<%# Eval("object_id")%>);return false;"


style="color:Black;background-color:Transparent;border-color:Transparent;border-style:None;">
show <%# Eval("description")%>'s history</a>
</ItemTemplate>

</asp:TemplateField>
</Columns>
<AlternatingRowStyle BackColor="#f7f7f7" />
</asp:GridView>
...
So, when user clicks on "show...history" link, in the main Grid, application shows records from the database. In order to get anything
back from database, or from the server-side, application needs to "post-back". Fortunately, FBJS has built-in support for AJAX (see more
at Mock AJAX). So we can post-back to server and patiently wait for reply:
<script>
function show_object_info(object_id)
{
var ajax = new Ajax();
ajax.responseType = Ajax.FBML;
ajax.ondone = function(data)
{
var dlg = new Dialog();
dlg.showMessage('Object Action History', data );
}

ajax.post("http://www.siccolo.com/fbtestappsiccolo/object_action_history.aspx?id=" + object_id);
}
</script>
Where object_action_history.aspx ASP.NET page:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="object_action_history.aspx.cs" Inherits="_ObjectActionHistory" %>

<!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>Object Action History</title>
</head>
<form id="formDataContent" runat="server" >
<div style="text-align:center">
<asp:GridView ID="gridSelectObjects" runat="server" AutoGenerateColumns="false" style="width:95%"> </asp:GridView>
</div>
</form>
</html>
Basically, object_action_history.aspx, when returns from ajax.post() to ajax.ondone() gives nothing more, just a "rendered" Grid
View. Then, in javascript (FBJS), on ajax.ondone, we take that data and "shovel" it down Dialog.showMessage():
<script>
function show_object_info(object_id)
{
//var dlg = new Dialog().showMessage('.. Traveling Babies ..', 'Select a baby and send it to your comrade...');

var ajax = new Ajax();


ajax.responseType = Ajax.FBML;
ajax.ondone = function(data)
{
var dlg = new Dialog();
dlg.showMessage('Object Action History', data );
}

ajax.post("http://www.siccolo.com/fbtestappsiccolo/object_action_history.aspx?id=" + object_id);
}
</script>

7. Developing Facebook Application with .NET - using Facebook Notifications


So far so good. We have Facebook-alike interface, user selects data, selected data is being saved in the database. But I forgot that

converted by W eb2PDFConvert.com
Facebook really is a social network, it's about social interactions... Let's add a "social interaction" in a form of user notification to our
Facebook Application.
Thanks to Facebook Developer Toolkit library, notifications are very easy to do:
protected void buttonSend_Click(object sender, EventArgs e)
{
string selectedFriendID = String.Empty;
try
{
selectedFriendID = Page.Request.Form["textSelectedFriend"].ToString();
}
catch
{
//oh-ho, no friend is selected!!!
return;
}
...
result = m_FacebookDB.DoObjectAction_And_Do_SendToFriend(applicationUserID,
applicationUserObjectID,
selectedActionID,
selectedFriendID,
out notificationTextToFriend,
out errorInfo);
...
string notification_result = FBService.SendNotification(notificationTextToFriend, selectedFriendID);
...
}
To send notification, we need to call SendNotification() method and pass notification text and ID of Facebook user. In this code, ID is
of selected Friend.
Because I'm too lazy, notificationTextToFriend notification text is built in the stored procedure, not in the application code. But you
can "compose" notification in the code as well. The result is something like this:
where, in my stored procedure, I can do something like this:

declare @application_path varchar(255)


set @application_path = 'http://apps.facebook.com/fbtestappsiccolo'

declare @notification varchar(8000)


select @notification =
' on [' + convert(varchar(10), action_date, 101) + ' ' +
convert(varchar(8), action_date, 108) + '] ' +
' sent '+
'<a href="' + @application_path + '">' + o.description + '' +
' to you!' +
' <fb:name uid="' + @facebook_user_id + '" /> already ' +
replace( oa.action_performed_text_ex, '<object_description>',o.description )

And that's it for part 1.

Credits: -
Network Trotters - for interesting idea.
Facebook Developer Toolkit library - .NET Toolkit for Facebook.
Wiki Facebook Developer Library - Wiki Facebook Developer Library.
And you can see this sample application on Facebook - Traveling Babies

Article keywords: Facebook, FBML, FBJS, AJAX, Mock AJAX , fb:action, fb:create-button, fb:help, fb:dashboard, fb:friend-selector, fb:editor, fb:iframe, ,
Animation, setTextValue, setValue , getElementById, span, div, ajax.post, , asp:DropDownList, asp:Button, asp:GridView, form, runat=server, server-side,
DataSet, DataC olumn, DataRow, GridView, DataSource

Back To Articles Page

Questions? Suggestions? Concerns? - email me to


[email protected] Greg Dubinovsky © 2008
or share your thoughts at Siccolo Blog

Web being sponsor - Mid-Atlantic Processing. Well being sponsor - C larity MediSpa . Hairless sponsor - C larity MediSpa Laser Hair Removal.
Development of Social App - Facebook development reference material: A step-by-step tutorial for creating custom Facebook applications using the Facebook
platform and ASP.NET
After you've added the Developer Application and downloaded a client library, use these resources to learn more about building a Facebook application.
Using Facebook Applications, developers can add custom features to one of the most popular websites in the world. Facebook is the biggest social network
among college students, and is gaining ground among professionals too. Facebook applications enable you to add new ways for users to interact with each
other using Facebook.
Facebook applications are written in a server-side language, and hosted on the application developer's own server. They interface with Facebook, so that they
appear to users to be part of Facebook itself.
This article shows ASP.NET developers how to quickly get started building powerful Facebook applications, how to work with data stored in Facebook, and how
to handle custom data within Facebook applications.
The article covers how to send notifications and invitations from within an application, update a user's profile, create application control panels for users, and
much more.
Facebook applications are basically content served up by any http server and seamlessly presented to users within Facebook pages. There are two ways this is
done; either with an iframe tag or with Facebook Markup Language (FBML), which is basically HTML with additional tags to access Facebook features. Using an
iframe may be the simplest option because you can just serve pages in the way you would with any web application, but FBML offers some additional
capabilities that you wouldn’t otherwise be able to take advantage of.
FBML
When the user requests a page within your application, the Facebook server maps the url on to a corresponding url on your server, retrieves the FBML,
converts it to HTML, then inserts the content in to the Facebook page. Of course, its all transparent to the end user, who doesn’t know and probably doesn’t care
where the content is coming from. FBML supports a large subset of HTML tags, and also C SS, so you can format and style pages as normal. The additional tags
are used to insert content, such as user details / photos and various widgets within your content. For instance the tag would insert the name of the Facebook
user with the user id 12345.
Siccolo - SQL Server Management Tool For Mobile Devices is packed with built-in functionality and tools. Siccolo delivers a rich set of management tools for
both DBAs and sys admins. SQL Server management has always been an area of DBA concern. The new Management Tool For Mobile Devices - Siccolo - has
simple "Enterprise Manager" and the "Query Analyzer". Siccolo is a management tool for the MS SQL Server with administration capabilities and a database
query tool. The administration features provide users the ability to browse database structures. An integrated query tool allows users to quickly create, edit and
execute SQL queries and scripts. Siccolo also provides an export tool to allow users to easily save and email execution results. Siccolo helps database
professionals save time and increase their productivity by utilizing a more efficient approach to database management - use their Windows Mobile empowered
device while sipping margarita on the beach For increased security, Siccolo is configured to run under SSL with IIS authentication.
Siccolo features are:
Run SQL Query window (with semi-automated Insert/Update/Delete/Select Statements) Open/Save SQL Scripts in multiple tabs Save/Email results
Explore SQL Server Browse databases and database objects (tables/views/stored procedures) Browse/Manage SQL Server jobs Browse/Manage
windows services (start/stop) View event logs (Application, System)
Manage SQL Server - restart MS SQL Server service and SQL Agent

245012/526794

converted by W eb2PDFConvert.com

You might also like