Replace your query porion with this
List<studentdetails> query = (from E in context.tbl_ExamCreation
join EA in context.tbl_ExamAttendence on E.Exam_ID equals EA.Exam_ID
join C in context.tbl_Course on E.Course_ID equals C.CourseID
where EA.StudentID == StudentID && SqlFunctions.DateDiff("DAY", E.DateOfExam, startdate) == 0 && E.Status == "A"
select new { Type = "Exam", StartDate = E.DateOfExam, Name = E.ExamName, Status = EA.status, EndDate = E.ExamEndDatetime, Course = C.Name })
.Union
(from LS in context.tbl_LectureScheduling
join LA in context.tbl_LectureAttendence on LS.LectureScheduleID equals LA.LectureScheduleID
join L in context.tbl_Lectures on LS.LectureID equals L.LectureID
join CR in context.tbl_Course on L.CourseID equals CR.CourseID
where LA.StudentID == StudentID && SqlFunctions.DateDiff("DAY", LS.StartDateTime, startdate) == 0 && LS.Status == "A"
select new StudentDetails(){ Type = "Lecture", StartDate = LS.StartDateTime, Name = L.LectureName, Status = LA.status, EndDate = LS.EndDateTime, Course = CR.Name }
).ToList();