public class Personne
{
public string Nom { get; set; }
public string Prenom { get; set; }
public int Age { get; set; }
}
List<Personne> personnes = new List<Personne>();
personnes.Add(new Personne(){Nom="DURAND",Prenom="Cyril",Age=21});
personnes.Add(new Personne() { Nom = "Kempé", Prenom = "Laurent", Age = 36 });
personnes.Add(new Personne() { Nom = "MELANTOIS", Prenom = "Frédéric", Age = 38 });
personnes.Add(new Personne() { Nom = "Perfetti", Prenom = "Michel", Age = 30 });
namespace EspaceDeNom1
public static class ExtensionPersonne
//prénom + Nom en majuscule
//[//System.Runtime.CompilerServices.Extension]
public static string PrenomNom(this Personne p)
StringBuilder s = new StringBuilder(p.Prenom);
s.Append(" ");
s.Append(p.Nom.ToUpper());
return s.ToString();
foreach (string identite in from p in personnes select p.PrenomNom())
Console.WriteLine(identite);
internal static string UpperToStandardUpper(this string chaine)
string accent = "ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÑÒÓÔÕÖØÙÚÛÜ";
string sansAccent = "AAAAAACEEEEIIIINOOOOOOUUUU";
char[] tableauSansAccent = sansAccent.ToCharArray();
char[] tableauAccent = accent.ToCharArray();
for (int i = 0; i < accent.Length; i++)
chaine = chaine.Replace(tableauAccent[i].ToString(), tableauSansAccent[i].ToString());
return chaine;
s.Append(p.Nom.ToUpper().UpperToStandardUpper());
foreach (string identite in from p in personnes select EspaceDeNom1.ExtensionPersonne.PrenomNom(p))
ou
foreach (string identite in from p in personnes select ConsoleApplication1.ExtensionPersonne.PrenomNom(p))
public IEnumerable<PERSONNE> GetPersonnes()
DataClasses1DataContext t = new DataClasses1DataContext(_myDatabaseConnectionString);
var c = from h in t.PERSONNEs select h;
return c;
IQueryable<PERSONNE> q = (IQueryable<PERSONNE>) MyDAL.GetPersonnes();
var r = from s in q where s.Personne_Age > 30 select s;
return from i in c.AsEnumerable() select i;
internal static class ExtensionLinq
internal static IEnumerable<TResult> Select<TSource, TResult>(this IEnumerable<TSource> source,
Func<TSource, TResult> selector)
IEnumerable<TSource> sourceEnum = source;
foreach (TSource s in sourceEnum)
yield return selector.Invoke(s);
foreach (TSource s in source)
var c = from h in dt.PERSONNEs where h.Personne_Age > 30 select h.Personne_Nom;
internal static IEnumerable<TResult> Select<TSource, TResult>(this IQueryable<TSource> source,
System.Linq.Expressions.Expression<Func<TSource, TResult>> selector)
IQueryable iq = Queryable.Select(source, selector);
foreach (TResult s in iq)
yield return s;
internal static IEnumerable<TSource> ToLinqToObject<TSource>(this IQueryable<TSource> source)
public IEnumerable<string> GetPersonnes()
DataClasses1DataContext t = new DataClasses1DataContext(myDatabaseConnectionString);
var c = from h in t.PERSONNEs where h.Personne_Age > 30 select h;
return c.ToLinqToObject();//return from i in c.AsEnumerable() select i;