dive into linq ivan towlson mindscape imagine there’s no sql three worlds.

Download Report

Transcript dive into linq ivan towlson mindscape imagine there’s no sql three worlds.

dive into linq
ivan towlson
mindscape
imagine there’s no sql
three worlds
Relational
XML
Objects
NoSQL
Objects
Web
Services
Relational
XML
Email
Objects
WMI
XML
NoSQL
Relational
Web
Services
Email
Objects
three worlds…XML
for large values of three
WMI
NoSQL
Relational
Web
Services
“queries should just ‘be there,’
like for loops”
anders hejlsberg
linq
language integrated query
language syntax
standard query operators
query implementation framework
language syntax
standard query operators
query implementation framework
putting the lin into linq
LINQ…
…to Objects
…to XML
IEnumerable XDocument
family
…to SQL
Table<T>
SQL Server
language syntax
standard query operators
query implementation framework
language syntax
standard query operators
query implementation framework
when syntax runs out
everything is query operators
language syntax
standard query operators
query implementation framework
language syntax
standard query operators
query implementation framework
I plan to query over
ONE… MILLION… OBJECTS!
what is the meaning of
x.Select(…)?
IEnumerable<T> x;
what is the meaning of
x.Select(…)?
IQueryable<T> x;
IEnumerable<T> x;
Enumerable.Select(x, …)
what is the meaning of
x.Select(…)?
IQueryable<T> x;
Queryable.Select(x, …)
IQueryable<T> x;
Queryable.Select(x, …)
Table<T> x;
Queryable.Select(x, …)
Queryable
IQueryProvider
SQL
Entities
Light
Speed
NH
….
Queryable
IQueryProvider
SQL
Entities
Light
Speed
NH
….
Queryable
IQueryProvider
SQL
Entities
Light
Speed
NH
….
Expression
tree
IQueryable
.Provider
Native
query
linq to sql
xs.Where(…)
.Select(…)
Table<X>
SELECT …
FROM X
WHERE …
linq to lightspeed
xs.Where(…)
.Select(…)
Query<X>
Find<X>(qx)
linq to wmi
xs.Where(…)
.Select(…)
WmiQuery<X>
WqlObjectQuery
Expression
tree
IQueryable
.Provider
Native
query
language syntax
standard query operators
query implementation framework
language syntax
standard query operators
query implementation framework
thinking in linq
what is a query?
what is a query?
extract, transform and load
what is a query?
‘what am i interested in’
i am interested in…
drag and drop
i am interested in…
a mouse down
followed by mouse moves
until i get a mouse up
…
Objects
actually
XML
anything
Relational
almost
…
Objects
“queries should just ‘be there,’
actually
XML
like for loops”
anders hejlsberg
anything
Relational
almost
thanks!
[email protected]
hestia.typepad.com/flatlander
[email protected]
www.mindscape.co.nz