LINQ Tools<br />Jim Wooley<br />www.ThinqLinq.com<br />www.LinqInAction.net<br />www.Twitter.com/LinqKinq<br />
Agenda<br />Samples and Plugins<br />Stand alone profilers<br />Designer extensions<br />Code Gen Extensions<br />Provider...
Samples<br />What is it? The LINQ Samples include tools, addins and visualizers<br />Download Site: http://code.msdn.micro...
LINQ Samples<br />
EF Visualizer<br />What is it? Visualizer for Entity Framework Queries<br />Download Site: www.rajvenkatesh.com/projects<b...
Query profiler<br />$<br />What is it? SQL Server’s built in profiler tool to show all requests evaluated by server<br />D...
Huagati LINQ to SQL Profiler<br />$<br />What is it? Profiling tool to monitor DataContext actions.<br />Download Site: ht...
L2S Prof<br />$<br />What is it? Profiling tool to monitor DataContext actions.<br />Download Site: http://l2sprof.com/hom...
LINQPad<br />What is it? Stand alone tool to prototype LINQ and .Net code.<br />Download Site: http://www.LinqPad.Net<br /...
LINQ Tools – EDM Designer<br />What is it? Replacement editor for managing large EDMX models<br />Download Site: http://ww...
Huagati DBML/EDMX Tools<br />$<br />What is it? VS Add-in to manage refreshing models and DB Schemas<br />Download Site: h...
Code Gen - L2ST4<br />What is it? T4 Code Generation Templates for LINQ to SQL<br />Download Site: http://l2st4.codeplex.c...
Code Gen– PLinqo<br />$<br />What is it? Supercharged LINQ to SQL<br />Download Site: http://plinqo.com<br />Example Probl...
LINQ Providers – I4O<br />What is it? Indexed LINQ to Objects<br />Download Site: http://www.codeplex.com/i4o<br />Example...
LINQ Providers – PLINQ<br />What is it? Parallel LINQ To Objects<br />Download Site: N/A: Included in .Net 4.0<br />Exampl...
LINQ Providers – LINQ to XSD<br />What is it? Typed LINQ to XML<br />Download Site: http://linqtoxsd.codeplex.com/<br />Ex...
LINQ Providers – LINQ to REST<br />What is it? LINQ provider to consume ADO.Net Data Services<br />Download Site: N/A: Inc...
LINQ Providers – LINQ to Twitter<br />What is it? Sample LINQ provider to access the Twitter APIs<br />Download Site: http...
LINQ Providers – BLINQ<br />What is it? Sample LINQ provider to access the BING API<br />Download Site: http://www.nikhilk...
LINQ Providers – IQUeryable Toolkit<br />What is it? Tool sample to understand parsing Iqueryable types.<br />Download Sit...
Tool Types<br />
Jim Wooley<br />www.ThinqLinq.com<br />www.LinqInAction.net<br />www.Twitter.com/LinqKinq <br />Questions<br />www.Speaker...
Upcoming SlideShare
Loading in...5
×

Linq tools

1,306

Published on

Tools to make your life wo

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,306
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
28
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Linq tools

  1. 1. LINQ Tools<br />Jim Wooley<br />www.ThinqLinq.com<br />www.LinqInAction.net<br />www.Twitter.com/LinqKinq<br />
  2. 2. Agenda<br />Samples and Plugins<br />Stand alone profilers<br />Designer extensions<br />Code Gen Extensions<br />Providers<br />
  3. 3. Samples<br />What is it? The LINQ Samples include tools, addins and visualizers<br />Download Site: http://code.msdn.microsoft.com/csharpsamples<br />Example Problem(s) it solves<br />Allows you to peak under the covers and see what LINQ is doing<br />Makes it easier to work with XML in C#<br />Installation Notes:<br />Find the downloads in Visual Studio clicking on Help then Samples<br />
  4. 4. LINQ Samples<br />
  5. 5. EF Visualizer<br />What is it? Visualizer for Entity Framework Queries<br />Download Site: www.rajvenkatesh.com/projects<br />Example Problem(s) it solvesSee the queries generated by the Entity Framework.<br />Installation Notes: XCopy Deploy library into Visualizers directory<br />
  6. 6. Query profiler<br />$<br />What is it? SQL Server’s built in profiler tool to show all requests evaluated by server<br />Download Site: N/A<br />Example Problem(s) it solvesSee the queries issued to the database, including updates.<br />Installation Notes: Installed with the SQL Server client tools<br />Usage Notes: Works only with SQL Server<br />
  7. 7. Huagati LINQ to SQL Profiler<br />$<br />What is it? Profiling tool to monitor DataContext actions.<br />Download Site: http://www.huagati.com/L2SProfiler/<br />Example Problem(s) it solvesDifficult to see database actions in a running application.<br />Installation Notes: Custom installer.<br />Usage Notes: Need to add extension methods on DataContext to enable logging.<br />
  8. 8. L2S Prof<br />$<br />What is it? Profiling tool to monitor DataContext actions.<br />Download Site: http://l2sprof.com/home<br />
  9. 9. LINQPad<br />What is it? Stand alone tool to prototype LINQ and .Net code.<br />Download Site: http://www.LinqPad.Net<br />Example Problem(s) it solvesLearn LINQ without needing to create full solutions.Easily prototype LINQ queries.<br />Installation Notes: X Copy Deployment<br />Usage Notes: Includes samples from “C# In a Nutshell“ and “LINQ in Action”<br />
  10. 10. LINQ Tools – EDM Designer<br />What is it? Replacement editor for managing large EDMX models<br />Download Site: http://www.codeplex.com/edmdesigner<br />Example Problem(s) it solvesManaging large databases is difficult in a single view.<br />Installation Notes: X-copy deploy (includes source)<br />Usage Notes: http://msmvps.com/blogs/matthieu/archive/ tags/EDM+Designer/ default.aspx<br />
  11. 11. Huagati DBML/EDMX Tools<br />$<br />What is it? VS Add-in to manage refreshing models and DB Schemas<br />Download Site: http://www.huagati.com/dbmltools/<br />Example Problem(s) it solvesExisting tools have problems when the DB Schema changes. This adds refresh abilities.<br />Usage Notes: Integrated into Visual Studio<br />
  12. 12. Code Gen - L2ST4<br />What is it? T4 Code Generation Templates for LINQ to SQL<br />Download Site: http://l2st4.codeplex.com/<br />Example Problem(s) it solvesCustomize the code created for the LINQ to SQL Classes<br />Installation Notes: Xcopy deployment of 2 files. Remove build action on .dbml file.<br />Usage Notes: T4 used heavily in VS 2010<br />
  13. 13. Code Gen– PLinqo<br />$<br />What is it? Supercharged LINQ to SQL<br />Download Site: http://plinqo.com<br />Example Problem(s) it solvesAdds features missing in LINQ to SQL.<br />Installation Notes: Requires CodeSmith(but see http://plinqo.com/offer.ashx)<br />
  14. 14. LINQ Providers – I4O<br />What is it? Indexed LINQ to Objects<br />Download Site: http://www.codeplex.com/i4o<br />Example Problem(s) it solvesLINQ to Object joins perform use table scans. This adds hashtablesto optimize frequent lookups.<br />Installation Notes: Build and add reference<br />Usage Notes: Explained at http://blog.magenic.com/blogs/aarone/archive/2007/04/09/ Introducing-i4o.aspx<br />
  15. 15. LINQ Providers – PLINQ<br />What is it? Parallel LINQ To Objects<br />Download Site: N/A: Included in .Net 4.0<br />Example Problem(s) it solvesProvides Multi-core support for LINQ to Objects queries<br />Usage Notes: Add the reference and then make your query parallel using .AsParallel<br />
  16. 16. LINQ Providers – LINQ to XSD<br />What is it? Typed LINQ to XML<br />Download Site: http://linqtoxsd.codeplex.com/<br />Example Problem(s) it solvesLINQ to XML queries are not typesafe and don’t have intellisense.<br />Installation Notes: See ReadMe.txt. Need to add Environment Variable.<br />Usage Notes: Point the command line tool at a schema to generate the proxy classes.<br />
  17. 17. LINQ Providers – LINQ to REST<br />What is it? LINQ provider to consume ADO.Net Data Services<br />Download Site: N/A: Included with .NET 3.5 sp 1<br />Example Problem(s) it solvesADO.Net Data Services adds another query syntax in the URI. This abstracts that syntax.<br />Installation Notes: Add reference<br />Usage Notes: Many LINQ statements can’t be translated to URI causing runtime exceptions<br />
  18. 18. LINQ Providers – LINQ to Twitter<br />What is it? Sample LINQ provider to access the Twitter APIs<br />Download Site: http://linqtotwitter.codeplex.com/<br />Example Problem(s) it solvesUnderstand how to build custom LINQ providers against non-standard data sources<br />Installation Notes: Build and add reference<br />Usage Notes: Requires building for x86 for authentication. Also supports OAuth.<br />
  19. 19. LINQ Providers – BLINQ<br />What is it? Sample LINQ provider to access the BING API<br />Download Site: http://www.nikhilk.net/BLinq-LINQ-over-Bing.aspx<br />Example Problem(s) it solvesUnderstand how to build custom LINQ providers against non-standard data sources<br />Installation Notes: Build and add reference<br />Usage Notes: Requires an AppID from http://www.bing.com/developers<br />
  20. 20. LINQ Providers – IQUeryable Toolkit<br />What is it? Tool sample to understand parsing Iqueryable types.<br />Download Site: http://www.codeplex.com/IQToolkit<br />Example Problem(s) it solvesBuilding a provider is difficult.<br />Usage Notes: See Matt Warren’s impressive tome starting with http://blogs.gotdotnet.com/mattwar/archive/2007/07/30/linq-building-an-iqueryable-provider-part-i.aspx<br />
  21. 21. Tool Types<br />
  22. 22. Jim Wooley<br />www.ThinqLinq.com<br />www.LinqInAction.net<br />www.Twitter.com/LinqKinq <br />Questions<br />www.SpeakerRate.com/jwooley<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×