Interview questions

What is LINQ? Benefits of LINQ

The Essence of LINQ

Chapter 3
The Essence of LINQ
Reproduced from the book Essential LINQ. Copyrightã 2008, Pearson Education, Inc., 800 East 96th Street, Indianapolis, IN 46240. 

<<Previous  Next>>


About LINQ

  • It is a technique for querying data that is integrated into .NET languages such as C# and VB. As such, it is both strongly typed and IntelliSense-aware.
  • It has a single unitive syntax for querying multiple data sources such as relational data and XML data.
  • It is extensible; talented developers can write providers that allow LINQ to query any arbitrary data source.
  • It uses a declarative syntax that allows developers to tell the compiler or provider what to do, not how to do it.
  • It is hierarchical, in that it provides a rich, object-oriented view of data.
  • It is composable, in that the results of one query can be used by a second query, and one query can be a subclause of another query. In many cases, this can be done without forcing the execution of any one query until the developer wants that execution to take place.
  • It is transformative, in that the results of a LINQ query against one data source can be morphed into a second format. For instance, a query against a SQL database can produce an XML file as output.

Benefits of LINQ 

  • Because LINQ is integrated into the C# language, it provides syntax highlighting and IntelliSense. These features make it easy to write accurate queries and to discover mistakes at design time.
  • Because LINQ queries are integrated into the C# language, it is possible for you to write code much faster than if you were writing oldstyle queries. In some cases, developers have seen their development time cut in half.
  • The integration of queries into the C# language also makes it easy for you to step through your queries with the integrated debugger.
  • The hierarchical feature of LINQ allows you to easily see the relationship between tables, thereby making it easy to quickly compose queries that join multiple tables.
  • The unitive foundation of LINQ allows you to use a single LINQ syntax when querying multiple data sources. This allows you to get up to speed on new technologies much more quickly. If you know how to use LINQ to Objects, it is not hard to learn how to use LINQ to SQL, and it is relatively easy to master LINQ to XML.
  • Because LINQ is extensible, you can use your knowledge of LINQ to make new types of data sources queriable.
  • After creating or discovering a new LINQ provider, you can leverage your knowledge of LINQ to quickly understand how to write queries against these new data sources.
  • Because LINQ is composable, you can easily join multiple data sources in a single query, or in a series of related queries.
  • The composable feature of LINQ also makes it easy to break complex problems into a series of short, comprehensible queries that are easy to debug.
  • The transformational features of LINQ make it easy to convert data of one type into a second type. For instance, you can easily transform SQL data into XML data using LINQ.
  • Because LINQ is declarative, it usually allows you to write concise code that is easy to understand and maintain.
  • The compiler and provider translate declarative code into the code that is actually executed. As a rule, LINQ knows more than the average developer about how to write highly optimized, efficient code. For instance, the provider might optimize or reduce nested queries.
  • LINQ is a transparent process, not a black box. If you are concerned about how a particular query executes, you usually have a way to examine what is taking place and to introduce optimizations into your query.

<<Previous  Next>>

Also read

Aspect-Oriented Programming

Explain the concepts and capabilities of Aspect-Oriented Programming, AOP.
What is Aspect in AOP?
AOP approach addresses Crosscutting concerns. Explain
The components of AOP are advices/interceptors, introductions, metadata, and pointcuts. Explain them
AOP vs OOPs...........



Write your comment - Share Knowledge and Experience


 

 
Latest placement tests
Latest links
 
Latest MCQs
» General awareness - Banking » ASP.NET » PL/SQL » Mechanical Engineering
» IAS Prelims GS » Java » Programming Language » Electrical Engineering
» English » C++ » Software Engineering » Electronic Engineering
» Quantitative Aptitude » Oracle » English » Finance
Home | About us | Sitemap | Contact us | We are hiring