public void TestLinqTake()
{
var connectionString = GetConnectionString("TestLinqTake");
var context = new MyEntityContext(connectionString);
var pe = context.Persons.Create();
pe.Name = "Eddie";
var pb = context.Persons.Create();
pb.Name = "Bill";
var pf = context.Persons.Create();
pf.Name = "Freddie";
var pd = context.Persons.Create();
pd.Name = "Dennis";
var pc = context.Persons.Create();
pc.Name = "Carole";
var pa = context.Persons.Create();
pa.Name = "Annie";
context.SaveChanges();
Assert.AreEqual(6, context.Persons.Count());
var orderedByName = context.Persons.OrderBy(p => p.Name).Skip(3).Take(2);
Assert.IsNotNull(orderedByName);
//Assert.AreEqual(2, orderedByName.Count());
var i = 0;
foreach (var p in orderedByName)
{
Assert.IsNotNull(p.Name);
switch (i)
{
case 0:
Assert.AreEqual("Dennis", p.Name);
break;
case 1:
Assert.AreEqual("Eddie", p.Name);
break;
}
i++;
}
Assert.AreEqual(2, i);
}