sticky
LINQ FAQ RRS feed

  • Question

  • Q0.  What is LINQ?  DLINQ?  XLINQ?

    A0.  [KF] LINQ stands for "Language Integrated Query".  It is a set of features such as lambdas, extension methods, and query comprehensions that enable compilers to understand and implement query logic over in-memory collections of objects.  For more information about lambdas, extension methods, and query comprehensions, please refer to http://msdn.microsoft.com/netframework/future/linq and the LINQ Project Overview document at http://msdn.microsoft.com/library/en-us/dndotnet/html/linqprojectovw.asp.

    A0.  [KF] DLINQ is an implementation of LINQ that allows expression trees to be translated into query syntax for a given database engine.  For example, the same tree may be translated differently for SQL Server, Oracle, or MySQL as well as LDAP, WMI, or another data store for which specialized logic may be needed.

    A0.  [KF] XLINQ provides classes and extensions to more easily query and construct XML documents. 

     

    Q1.  Where may I find specs, videos, and other official information?

    A1.  [KF] The LINQ Project: http://msdn.microsoft.com/netframework/future/linq

    A1.  [KF] VC# Futures: http://msdn.microsoft.com/vcsharp/future

    A1.  [KF] VB.NET Futures: http://msdn.microsoft.com/vbasic/future

    A1.  [KF] Known Issues: http://msdn.microsoft.com/netframework/future/linqissues/

     

    Q2.  How may I talk directly to the LINQ development team?

    A2.  [KF] MSDN Chats allow live Q&A sessions with Microsoft developers.  The MSDN Chat schedule is at http://msdn.microsoft.com/chats.

     

    Q3.  What is Orcas, and what can be said about its release?

    A3.  [KF] Orcas is the next release of Microsoft's .NET Framework, the first such release to support the Microsoft Vista operating system, and as such is expected to be short-cycle.  An official RTM date has not been made public.

     

    Q4.  Isn't LINQ a Microsoft-only technology?  Isn't DLINQ only for SQL Server?

    A4.  [KF] LINQ is extensible by creating extension methods against your own types.  Specifically with DLINQ, we are actively working on ways to enable database vendors to more easily hook their products into the query translation pipeline.

     

    Q5.  What languages have announced plans to support LINQ?

    A5.  [KF] Microsoft languages, support starting: 

    • C# 3,
    • F# 1.1.8.1,
    • VB 9

    A5.  [KF] Microsoft languages, no plans to support: 

    • C++/CLI

    A5.  [KF] Microsoft languages, unknown: 

    • IronPython,
    • Monad,
    • Spec#

    A5.  [KF] Third-party languages, support: 

    Monday, March 20, 2006 11:02 PM

Answers

  • Q6.  What is "var", and what is its relation to strong typing?

    A6.  [KF] In C#3, "var" is a variable declaration keyword that instructs the compiler to infer the correct strong type to assign to the variable.  It is not the a "variant" type.  For example, the following would generate a compilation error:

    var x = "One"; // compiler infers that x is a string
    x = "Two"; // OK: x is strongly typed to string x = 3; // ERROR: Cannot implicitly convert type 'int' to 'string'

     

    Q7.  When may we expect a new preview of LINQ et al? When will they be released?

    A7.  [KF] The May 2006 CTP was released to web on 10 May 2006.  The final release date has not been publically announced.

     

    Q8.  What are our options for run-time definitions of queries?

    A8.  [KF] The May 2006 CTP includes support for this.  See QueryExpression and the InteractiveQuery Sample (C#).

     

    Q9.  Does LINQ work with ASP.NET? How do I get them together?

    A9.  [KF] The May 2006 CTP includes templates for .NET 2.0-style web projects, as well as a Web sample.  There is also this example (for VB.NET -- C# would be similar): http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=290434&SiteID=1.

     

    Tuesday, March 21, 2006 9:21 AM
  • Q10:  Is it safe to install the May CTP on my main development machine?  I read somwhere a new compiler is shipped, to handle the new language constructs. Am a bit worried about compatibility.

    A10:  [KF]  A prototype compiler and IDE support package is installed in the LINQ Preview directory, and scripts are provided to switch between the existing 2.0 and the prototype MSBuild targets.  However, while we do our best to ensure that none of this damages your existing .NET installation, this is still pre-release software and thus no promises can be made.

     

    Monday, May 15, 2006 9:52 AM

All replies

  • Q6.  What is "var", and what is its relation to strong typing?

    A6.  [KF] In C#3, "var" is a variable declaration keyword that instructs the compiler to infer the correct strong type to assign to the variable.  It is not the a "variant" type.  For example, the following would generate a compilation error:

    var x = "One"; // compiler infers that x is a string
    x = "Two"; // OK: x is strongly typed to string x = 3; // ERROR: Cannot implicitly convert type 'int' to 'string'

     

    Q7.  When may we expect a new preview of LINQ et al? When will they be released?

    A7.  [KF] The May 2006 CTP was released to web on 10 May 2006.  The final release date has not been publically announced.

     

    Q8.  What are our options for run-time definitions of queries?

    A8.  [KF] The May 2006 CTP includes support for this.  See QueryExpression and the InteractiveQuery Sample (C#).

     

    Q9.  Does LINQ work with ASP.NET? How do I get them together?

    A9.  [KF] The May 2006 CTP includes templates for .NET 2.0-style web projects, as well as a Web sample.  There is also this example (for VB.NET -- C# would be similar): http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=290434&SiteID=1.

     

    Tuesday, March 21, 2006 9:21 AM
  • For Q9: The correct link for "Using VB Linq in web applications" is http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=290434&SiteID=1 

    Wednesday, March 22, 2006 9:28 PM
  • Changed
    Wednesday, March 22, 2006 9:47 PM
  • Q10:  Is it safe to install the May CTP on my main development machine?  I read somwhere a new compiler is shipped, to handle the new language constructs. Am a bit worried about compatibility.

    A10:  [KF]  A prototype compiler and IDE support package is installed in the LINQ Preview directory, and scripts are provided to switch between the existing 2.0 and the prototype MSBuild targets.  However, while we do our best to ensure that none of this damages your existing .NET installation, this is still pre-release software and thus no promises can be made.

     

    Monday, May 15, 2006 9:52 AM
  • Even my Windows Forms based applications today require n-tier coding to meet security requirements. What kind of support will LINQ provide for the execution of queries from a middle-tier that were instantiated on a web or presentation tier server?
    Wednesday, May 17, 2006 5:08 AM