BrightstarDB.Tests.EntityFramework.LinqTests.TestLinqJoinWithFilter C# (CSharp) Метод

TestLinqJoinWithFilter() приватный Метод

private TestLinqJoinWithFilter ( ) : void
Результат void
        public void TestLinqJoinWithFilter()
        {
            var connectionString = GetConnectionString("TestLinqJoinWithFilter");
            var context = new MyEntityContext(connectionString);

            // Setup
            var people = new List<IPerson>();
            for (var i = 0; i < 10; i++)
            {
                var person = context.Persons.Create();
                person.Name = "Person " + i;
                person.EmployeeId = i;
                var age = (i + 2) * 10;
                person.Age = age;
                people.Add(person);
            }

            for (var i = 0; i < 100; i++)
            {
                var article = context.Articles.Create();
                article.Title = "Article " + i;

                var publisher = people.Where(p => p.EmployeeId == (i / 10)).SingleOrDefault();
                Assert.IsNotNull(publisher);

                article.Publisher = publisher;
            }
            context.SaveChanges();

            // Assert
            Assert.AreEqual(10, context.Persons.Count());
            Assert.AreEqual(100, context.Articles.Count());

            var articlesByOldPeopleCount = Enumerable.Count(context.Articles, a => a.Publisher.Age > 50);
            Assert.AreEqual(60, articlesByOldPeopleCount);

            var articlesByOldPeople = (from person in context.Persons
                                       join article in context.Articles on person.Id equals article.Publisher.Id
                                       where person.Age > 50
                                       select article).ToList();

            Assert.AreEqual(60, articlesByOldPeople.Count);
        }