Showing posts with label in clause. Show all posts
Showing posts with label in clause. Show all posts

Tuesday, 10 January 2012

implementing sql "in" in linq to sql

using (DataContext dc = new DataContext("connectionstring"))

   {

     List<string> names = new List<string>();

    names.Add("Anderson");

    names.Add("Johnson");

    List<Person> list = (from p in dc.GetTable<Person>() where names.Contains(p.LastName) select p).ToList();

  }

equivalent Sql generated by the above is

DECLARE @p1 NVarChar(8);

DECLARE @p0 NVarChar(7);

Select @p1 = 'Johnson';

Select @p0 = 'Anderson';

-- Context: SqlProvider(Sql2005) Model: AttributedMetaModel Build: 3.5.21022.8

SELECT [t0].[Id], [t0].[FirstName], [t0].[LastName]

FROM [dbo].[Person] AS [t0]

WHERE [t0].[LastName] IN (@p0, @p1)

this is found in googling, don't remember url