//model
public class Person
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
}
public class PersonDetails
{
public int Id { get; set; }
public int DeptId { get; set; }
Public int insuranceid{get;set;}
public string insurancecategory{get; set;}
public virtual EmpDetails EmpDetails { get; set; }
public virtual FamilyDetails FamilyDetails { get; set; }
}
//View Model
public class PeopleViewModel
{
public int Id { get; set; }
Public int insuranceid{get;set;}
public string insurancecategory{get; set;}
public virtual EmpDetails EmpDetails { get; set; }
public virtual FamilyDetails FamilyDetails { get; set; }
public IEnumerable<Person> People { get; set; }'
public string GetFullName(int id)
{
var person = People.FirstOrDefault(p => p.Id == id);
return (person != null) ? string.Format("{0}, {1}", person.LastName, person.FirstName) : null;
}
}
created view page from PeopleViewModel
in Controller i have
public ActionResult DisplayDetails()
{
try
{
var model = db.PersonDetails.Where(u => u.DeptId == did).ToList().Select(u => new PeopleViewModel
{
Id = u.Id ,
// full name???
insurancecategory=u.insurancecategory
}).ToList();
return View(model);
}
catch (Exception ex)
{
TempData["ErrorMsg"] = ex.Message.ToString();
}
return View();
}
1)how to get the name in controller?
2)how to debug the linq query?
i am not getting any records