juin
2007
J’ai utilisé SQL Server 2008 (projet Katmaï) hier et a ma grande déception, il n’y a toujours pas d’intellisence ! Il y a pas à dire, Vive LINQ To SQL !
juin
2007
Anders Hejlsberg, Technical Fellow and chief architect of the C# language, a animer une session intitulée « Visual Studio: The .NET Language Integrated Query (LINQ) Framework Overview » dont le webcast est disponible ici.
juin
2007
Un webcast expliquant comment connecter une base de donnée SQL avec LINQ.
juin
2007
David Hayden répertorie les cas où l’utilisation de l’ADO .NET Entity Framework apporte quelque chose par rapport à LINQ to SQL.
juin
2007
Anders Hejlsberg a présenter LINQ lors du MIX 2007. Vous pouvez récupérer sa présentation (sous fome d’un webcast de 72 mins) ici.
juin
2007
J’avais blogué précedemment sur le fait que les tables d’un DataSet n’étaient plus de simple DataTable mais des System.Data.TypedTableBase<DataRowType>. Quelque chose de très intéressant c’est que System.Data.TypedTableBase<DataRowType> implémente IEnumerable<DataRowType>. Du coup, on a le droit d’écrire ce style de requêtes : var column1Values = from row in ds.DataTable1 select row.DataColumn1;
juin
2007
Charlie Calvert vient de référencer toutes une série d’extension de LINQ plus plusieurs articles sur C#. Pour rappel, Microsoft fournit des « providers » LINQ pour les objets, SQL Server, les DataSet, les fichiers XML. Vous pouvez cependant relativement facilement créer votre propre provider. J’avais d’ailleurs déjà référencé l’excellent travail de Bart de Smet : LINQ To LDAP.
juin
2007
La syntaxe d’un join en LINQ est : from e1 in enumerable1 join e2 in enumerable2 on e1.X equal e2.X select new {e1.X, e1.Y, e1.A, e2.B} Je voulais faire un join sur e1.X equal e2.X et e1.Y equal e2.Y. Je pensais pouvoir utiliser un && comme dans un where mais ça ne marche pas. On ne peut mettre qu’une seule condition à un join. Anders Hejlsberg m’a donné la solution : passer par un anonymous […]
juin
2007
Avec Linq, une nouvelle interface est venu se greffer accompagnant INotifyPropertyChanged : INotifyPropertyChanging. Tout comme sa grande soeur (qui était là depuis .NET 2.0) elle ne comporte qu’un évènement : PropertyChanging. Bien souvent, les évènements en « ing » prennent des CancelEventArgs. Pas celui-là. Il a la même signature que PropertyChanged : public interface INotifyPropertyChanging { event PropertyChangedEventHandler PropertyChanging; }
juin
2007
System.Data.Linq.Table<> ne supporte pas l’extension method Last. Cependant, comme c’est un IEnumerable, l’erreur n’intervient qu’à l’exécution et non à la compilation. L’erreur est la suivante : « The query operator ‘Last’ is not supported. » Cependant on peut feinter : passer par l’extension method Last sur IEnumerable : ((IEnumerable<Person>)(dataContext.Persons)).Last(); ou dataContext.Persons.ToList().Last(); En faisant cela, on comprend pourquoi ce n’est pas supporté par System.Data.Linq.Table<>. En effet, le dernier élément n’est pas le dernier élément ajouté ! Pour info, […]