MVC 4 Changing a field based on DropDownListFor selection
First off, almost the same as the above question, but the solution isn\'t working for this one.
I have
One thing you are doing is not returning a single result from your FillCourseInfo action.
This means your json result is a list of StudentCourseDetails. You would have to use $('#Dates').val(data[0].courseDates); to get your values.
Or if you're just expecting a single value you can use .FirstOrDefault() at the end of your linq query.
var ret = (from e in db.Enrollments
join c in db.Courses on e.CourseID equals c.CourseID
where e.StudentID == StudentID && e.CourseID == CourseID
select new StudentCourseDetails
{
courseDates = c.CourseStartDate.ToString() + " " + c.CourseEndDate.ToString(),
projectName = e.Project.ProjectTitle,
graduated = e.Graduated
}).FirstOrDefault();
I created another .NET Fiddle for you. DotNetFiddle
To use ToString in your linq query, convert the result to a list, then build your json
var ret = (from e in db.Enrollments
join c in db.Courses on e.CourseID equals c.CourseID
where e.StudentID == StudentID && e.CourseID == CourseID
select new
{
courseStartDate = c.CourseStartDate,
courseEndDate = c.CourseEndDate,
projectName = e.Project.ProjectTitle,
graduated = e.Graduated
}).ToList()
.Select(a => new StudentCourseDetails() {
courseDates = a.courseStartDate.ToString() + " " + a.courseEndDate.ToString(),
projectName = a.projectName,
graduated = a.graduated
}).FirstOrDefault();