LINQ: ADO.Net next generation
Well, now with LINQ you can use the classic SQL syntax like SELECT, FROM and WHERE. The only difference is the order you use with those "commands". expr = from s in myStrings foreach (string item in expr) Isn't that great?! And trust me, this is the simples dumbed example, you can do amazing things with it, like creating classes for your application in runtime. In this example we're just selecting text, but let's say you want to select many attributes from a User table like Name, Address, and Phone. You can select those attributes and "declare them" as a class called Clients and you can reference that Client class later on in your code. Bien, pues ahora con LINQ usted podrá utilizar la clásica sintaxis de SQL como ser SELECT, FROM, y WHERE. La única diferencia es el orden en el que uno escribe estos comandos. expr = from s in myStrings foreach (string item in expr) No es bárbaro?! Y créeanme que este es el ejemplo mas choto que existe, uno puede hacer cosas asombrosas con esto, como crear clases para su aplicación en tiempo de ejecución. En este ejemplo simplemente estamos seleccionando texto, pero digamos que usted quiere seleccionar varios atributos de una tabla Usuarios como ser Nombre, Dirección, y Teléfono. Usted puede seleccionar esos atributos y "declararlos" como una clase llamada Clientes y puede referenciar esa clase mas adelante en su código.
I recently tried The LinQ Project. LINQ stands for Language Integrated Query and it is just great, at least for me. What's the best way to manage data? If you didn't say SQL stop reading!
The best way to explain LINQ is with examples, so here I go. Imagine you have an array of strings (string[]) and yo want to print every string which length is longer than 5 characters, and you want to print'em in upper case.
You would probably do something like this:
foreach (string s in myStrings)
{
If (s.Length > 5)
Console .WriteLine(s.ToUpper()); //What if you want'em ordered?
}
Let's write the same example using LINQ.
where s.Length > 5
orderby s //Ordering here!!!
select s.ToUpper();
Console.WriteLine(item);
I hope I made myself clear, go to the LINQ Project home page and also download Anders' video from Channel9.
La mejor forma de explicar LINQ es mediante ejemplos, asi que aquí voy. Imagine que tiene un arreglo de strings (string[]) y quiere imprimir todas las cadenas cuyo largo sea mayor que 5 caracteres, y quiere imprimirlas en mayúscula.
Probablemente ud. haría algo como esto:
foreach (string s in myStrings)
{
If (s.Length > 5)
Console .WriteLine(s.ToUpper()); //Qué pasa si quisiera ordenarlos??
}
Escribamos el mismo ejemplo utilizando LINQ.
where s.Length > 5
orderby s //Ordenado desde aquí!!!
select s.ToUpper();
Console.WriteLine(item);
Espero haberme hecho entender, vaya a la página del LINQ Project y bájese el video de Ander de Channel9.