by Andrea
28 January 2010 08:07
Visto la mia scoperta a riguardo di Linq to Twitter, mi sono chiesto se qualcuno avesse anche scritto un provider LINQ per Facebook, ed ecco che sempre da codeplex spunta il progetto LINQ to FQL, un provider di LINQ che si interfaccia direttamente con le API di Facebook.
Un articolo a riguardo di questa libreria lo trovate a questo link su codeproject:
Facebook Developer Toolkit LINQ to FQL Addon
mentre direttamente su CodeRun trovate il codice disponibile per testare subito la libreria:
CodeRun - LINQ to Facebook
Ed ecco un esempio di sintassi:
1: var db = new FacebookDataContext();
2: //LINQ Query Syntax
3: var myUser = from user in db.user where user.uid == db.uid select user;
4: //LINQ Method Syntax (the same query)
5: var myUser2 = db.user.Where(t => t.uid == db.uid);
Una cosa che non condivido a pieno di questa libreria, è l'aver mantenuto gli stessi nomi degli oggetti e proprietà utilizzati da Facebook, mentre io avrei preferito fossero stati rinominati con qualcosa di più leggibile/parlante (e che rispetti le Naming Convention). Capisco altresì che uno sviluppatore, in questo modo, può utilizzare la stessa documentazione delle API di Facebook per capirne il significato e l'utilità.
Technorati Tags:
LINQ to Facebook
by Andrea
27 January 2010 06:36
Cercando una libreria per interfacciarmi con le API di Twitter, sono venuto a conoscenza di un provider per LINQ chiamato LINQ to Twitter, che esegue le chiamate verso il noto social network.
Questo provider permette quindi di tradurre una sintassi LINQ in una chiamata verso le API REST di Twitter, in modo del tutto trasparente, facilitando/velocizzando notevolmente le fasi di sviluppo (e aggiungerei anche, migliorando la lettura del codice).
Il progetto è disponibile a questo link: LINQ to Twitter
Un esempio di codice (completo di autenticazione semplice) è il seguente, dove andremo a recuperare gli ultimi tweets degli amici:
1: var authorization = new UsernamePasswordSimpleAuthorization()
2: {
3: UserName = ConfigurationManager.AppSettings["twitterConsumerKey"],
4: Password = ConfigurationManager.AppSettings["twitterConsumerSecret"]
5: };
6: authorization.SignOn();
7:
8: using (TwitterContext tc = new TwitterContext(authorization))
9: {
10: var publicTweets = (from tweet in tc.Status
11: where tweet.Type == StatusType.Friends
12: select tweet).ToList();
13: }
Dando uno sguardo al codice, il progetto sembra davvero completo (a differenza di molte altre librerie che non vengono aggiornate dal 2007), e sopratutto, fornisce pieno accesso alle funzionalità di Twitter:
- Status
- User
- Direct Messages
- Friendship
- Social Graph
- Account
- Twitter Search
- Authentication
Technorati Tags:
LINQ to Twitter