public List <FieldVisitStExcel> FindRowsFromExcel(string[][] parseline, Dictionary <string, int> valueDictionary)
        {
            var distinctStudents = new List <FieldVisitStExcel>();
            var sctx             = new ApplicationDbContext();
            var students         = sctx.FieldVisitStExcel.ToList();

            try
            {
                var parselineData = parseline.Skip(1).Distinct();
                foreach (var eachStudent in parselineData)
                {
                    var studentDetails = new FieldVisitStExcel();
                    studentDetails.CollegeFullName        = eachStudent[valueDictionary["College"]];
                    studentDetails.CollegeShortName       = eachStudent[valueDictionary["CollegeCode"]];
                    studentDetails.DateandTime            = eachStudent[valueDictionary["Date"]];
                    studentDetails.Time                   = eachStudent[valueDictionary["Time"]];
                    studentDetails.Course                 = eachStudent[valueDictionary["Course"]];
                    studentDetails.Discussion             = eachStudent[valueDictionary["Discussion"]];
                    studentDetails.Email                  = eachStudent[valueDictionary["Email"]];
                    studentDetails.FacebookURL            = eachStudent[valueDictionary["FacebookURL"]];
                    studentDetails.Imagination            = eachStudent[valueDictionary["Dream"]];
                    studentDetails.MobileNo               = eachStudent[valueDictionary["Cell"]];
                    studentDetails.Name                   = eachStudent[valueDictionary["PersonName"]];
                    studentDetails.IsIntrestedInFirstMeet =
                        eachStudent[valueDictionary["Interested during First Meeting"]];
                    studentDetails.Replyed      = eachStudent[valueDictionary["Replyed"]];
                    studentDetails.Year         = eachStudent[valueDictionary["Year"]];
                    studentDetails.ContactAgain = eachStudent[valueDictionary["ContactAgain"]];
                    studentDetails.LKTM         = eachStudent[valueDictionary["LKTM"]];

                    if (!string.IsNullOrEmpty(studentDetails.Name))
                    {
                        distinctStudents.Add(studentDetails);
                        if (!students.Any(s => s.Name == studentDetails.Name) &&
                            !students.Any(s => s.CollegeFullName == studentDetails.CollegeFullName))
                        {
                            sctx.FieldVisitStExcel.Add(studentDetails);
                        }
                        else
                        {
                            studentDetails.Id = students
                                                .Where(s => s.Name == studentDetails.Name &&
                                                       s.CollegeFullName == studentDetails.CollegeFullName).Select(c => c.Id)
                                                .FirstOrDefault();
                        }
                    }
                }

                sctx.SaveChanges();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.ToString());
            }

            return(distinctStudents);
        }
Example #2
0
        public StudentDetailResponse GetStudents()
        {
            var studentDetailResponse = new StudentDetailResponse();
            var studentDetailList     = new List <FieldVisitStExcel>();

            try
            {
                var students = _sctx.FieldVisitStExcel.ToList();
                foreach (var student in students)
                {
                    var studentDetails = new FieldVisitStExcel();
                    studentDetails.Id = student.Id;
                    studentDetails.CollegeFullName        = student.CollegeFullName;
                    studentDetails.CollegeShortName       = student.CollegeShortName;
                    studentDetails.DateandTime            = student.DateandTime;
                    studentDetails.Time                   = student.Time;
                    studentDetails.Course                 = student.Course;
                    studentDetails.Discussion             = student.Discussion;
                    studentDetails.Email                  = student.Email;
                    studentDetails.FacebookURL            = student.FacebookURL;
                    studentDetails.Imagination            = student.Imagination;
                    studentDetails.MobileNo               = student.MobileNo;
                    studentDetails.Name                   = student.Name;
                    studentDetails.IsIntrestedInFirstMeet = student.IsIntrestedInFirstMeet;
                    studentDetails.Replyed                = student.Replyed;
                    studentDetails.Year                   = student.Year;
                    studentDetails.ContactAgain           = student.IsContactAgain;
                    studentDetails.LKTM                   = student.LKTM;
                    studentDetailList.Add(studentDetails);
                }
            }
            catch (Exception)
            {
            }

            studentDetailResponse.Students = studentDetailList;
            return(studentDetailResponse);
        }