Example #1
0
        public static PeopleObject GetPeople()
        {
            PeopleObject card = new PeopleObject()
            {
                caption = "Personnages",
                headers = new string[] { "Id", "Nom", "Prénom", "Position", "Mobile", "Email" },
                types   = new string[] { "number", "string", "string", "string", "string" },
                props   = new string[] { "Id", "Nom", "Prenom", "Position", "Mobile", "Email" }
            };

            using (var dbContext = new QuickToDosEntities())
            {
                IQueryable <Person>   query  = dbContext.People;
                IQueryable <Position> query2 = dbContext.Positions;
                IQueryable <Note>     query3 = dbContext.Notes;
                card.data = query.Select(x => new DataForPeople
                {
                    Id         = x.Id,
                    Nom        = x.Nom,
                    Prenom     = x.Prenom,
                    IdPosition = x.IdPosition != null ? (int)x.IdPosition : 0,
                    Email      = x.Email,
                    Mobile     = x.Mobile,
                    Photo      = x.Photo != null ? x.Photo:"",
                    Position   = query2.Where(y => y.Id == x.IdPosition).FirstOrDefault().Name,
                    Notes      = query3.Where(z => z.ConcernId == x.Id && z.Concern == "people").OrderByDescending(z => z.Id).ToList()
                }).ToList();
            }

            card.data = card.data.OrderBy(x => x.Nom).ToList();

            return(card);
        }
Example #2
0
        public static PeopleObject GetSearchForPeople(string searchFor)
        {
            PeopleObject card = new PeopleObject()
            {
                caption = "Personnages",
                headers = new string[] { "Id", "Nom", "Prénom", "Position", "Mobile", "Email" },
                types   = new string[] { "number", "string", "string", "string", "string" },
                props   = new string[] { "Id", "Nom", "Prenom", "Position", "Mobile", "Email" }
            };

            using (var dbContext = new QuickToDosEntities())
            {
                IQueryable <Position> query2 = dbContext.Positions;
                IQueryable <Note>     query3 = dbContext.Notes;
                List <int?>           Ids    = new List <int?>();
                var NoteList = dbContext.Notes.Where(
                    x => x.Body.Contains(searchFor) &&
                    x.Concern == "people"
                    ).ToList();
                foreach (var note in NoteList)
                {
                    Ids.Add(note.ConcernId);
                }
                IQueryable <Person> query = dbContext.People.Where(
                    x => x.Nom.Contains(searchFor) ||
                    x.Prenom.Contains(searchFor) ||
                    x.Email.Contains(searchFor) ||
                    Ids.Contains(x.Id)
                    );

                card.data = query.Select(x => new DataForPeople
                {
                    Id         = x.Id,
                    Nom        = x.Nom,
                    Prenom     = x.Prenom,
                    IdPosition = x.IdPosition != null ? (int)x.IdPosition : 0,
                    Email      = x.Email,
                    Mobile     = x.Mobile,
                    Photo      = x.Photo != null ? x.Photo : "",
                    Position   = query2.Where(y => y.Id == x.IdPosition).FirstOrDefault().Name,
                    Notes      = query3.Where(z => z.ConcernId == x.Id && z.Concern == "people").ToList()
                }).ToList();
            }

            card.data = card.data.OrderByDescending(x => x.Id).Take(30).ToList();

            return(card);
        }
        public async Task TestJsonObjectToJsonAsyncWithCollectionObject()
        {
            // Arrange

            // Act
            var toJsonSerializerSettings = new JsonSerializerSettings
            {
                Formatting = Formatting.Indented
            };
            var json = await PeopleObject.ToJsonAsync(toJsonSerializerSettings);

            this.Output.WriteLine(json);

            // Assert
            Assert.NotNull(json);
            Assert.False(String.IsNullOrEmpty(json));

            var jObject = JObject.Parse(json);

            AssertPeople(PeopleObject, jObject);
        }