Borland Chief Scientist Danny Thorpe on the idea of Linq
Stands for language integrated query. Allows SQL like queries on lists, collections etc.
Satya - Wednesday, November 09, 2005 10:19:11 AM
Current releases of dotnet environments
Visual Studio 2005 Dotnet 2.0
Previous dotnet releases
1.1 1.0
Previous visual studio releases
2003 (for dotnet 1.1) visual studio.net (for dotnet 1.0)
Satya - Wednesday, November 09, 2005 10:20:40 AM
What visual studio.net is required to linq?
What releases of dotnet and visual studio.net do I need to run linq. There is availability of linq against 2005. What about previous versions?
Satya - Wednesday, November 09, 2005 10:24:52 AM
Primary topics in linq
Linq proper xlinq for xml dlinq for databases
Satya - Wednesday, November 09, 2005 10:34:36 AM
General ideas in linq
Motivation for linq history of linq Language based queries working with collections filters projections key extraction lambda expressions expression trees duck typing extension methods late binding and defered evaluation compound values anonymous types sorting and grouping Aggregation select and select many General Operators Where, Select, SelectMany, GroupBy, OrderBy, ThenBy, OrderByDescending, and ThenByDescending. Online resources mailing lists web logs tutorials
Satya - Wednesday, November 09, 2005 12:34:41 PM
Xlinq topics
A new programming API for XML functional construction Relationship to linq Relationship to DOM, XQuery, Xpath New language objects in xlinq xling class diagram document free Better support for namespaces A conceptual approach to xml programming Reading xml files In memory xml initialization XML navigation in xlinq Manipulation xml: insert, delete, update Attribute treatment xml printing Querying xml standard extended Transformations Working with databases
Satya - Wednesday, November 09, 2005 12:59:46 PM
DLinq topics
A brand new facility for data access Relationship to object databases Relationship to Entity beans in EJBs Relationship to o/r mapping tools: Hibernate Inheritance Mapping Data binding Concurrency Transactions Advances over ADO Attributes for mapping Data context: defining your databases Foreign keys joins Saving c# as your T-sql Defered execution Object identity Projections Concurrency Transactions Events or specializing the updates Main Attributes Relational integrity Change notifications Tools: Auto generation of classes from schema Integration with xml
Satya - Monday, November 14, 2005 9:54:40 AM
A fundamental requirement of linq
operates on IEnumerable types
Satya - Monday, November 14, 2005 9:57:26 AM
hard wired binding to database tables
At the moment in dlinq the tables are hard wired in your code.
Satya - Monday, November 14, 2005 10:03:16 AM
The underlying pillars of linq
Generics anonymous methods
Satya - Monday, November 14, 2005 10:13:29 AM
The soul of linq
A language integrated query would use the metadata of a compiled language like c#. Implication is that an ensuing query should take advantage of the following
metadata compile time syntax checking static typing intellisense
Potentially this could be reflection on steroids. Or could play the role of what "system tables" in relational databases.