Guest User

Untitled

a guest
Jun 19th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. public class ComputerModel
  2. {
  3. public int MachineId { get; set; }
  4. public int GroupId { get; set; }
  5. public int SoftwareVersionId { get; set; }
  6. public string GroupName { get; set; }
  7. public string SoftwareVersion { get; set; }
  8. public string IPAddress { get; set; }
  9. public string HostName { get; set; }
  10. public string MACAddress { get; set; }
  11. public string Title { get; set; }
  12. public bool IsIGMonitor { get; set; }
  13. public string UpTime { get; set; }
  14. public DateTime DateEntered { get; set; }
  15. public string EnteredBy { get; set; }
  16. public Nullable<DateTime> DateUpdated { get; set; }
  17. public string UpdatedBy { get; set; }
  18. public ICollection<MachineRole> MachineRoles { get; set; }
  19. public ICollection<Role> Roles { get; set; }
  20. }
  21.  
  22. var query = (from m in unitOfWork.Context.Machines
  23. join u in unitOfWork.Context.Users
  24. on m.EnteredBy equals u.UserId into EntByUser
  25. from EnteredByUser in EntByUser.DefaultIfEmpty()
  26. join u2 in unitOfWork.Context.Users
  27. on m.UpdatedBy equals u2.UserId into UpdByUser
  28. from UpdatedByUser in UpdByUser.DefaultIfEmpty()
  29. join g in unitOfWork.Context.Groups
  30. on m.GroupId equals g.GroupId into Grp
  31. from Groups in Grp.DefaultIfEmpty()
  32. join s in unitOfWork.Context.SoftwareVersions
  33. on m.SoftwareVersionId equals s.SoftwareVersionId into SW
  34. from SoftwareVersions in SW.DefaultIfEmpty()
  35. join mr in unitOfWork.Context.MachineRoles
  36. on m.MachineId equals mr.MachineId into MachRoles
  37. from MachineRoles in MachRoles.DefaultIfEmpty()
  38. join r in unitOfWork.Context.Roles
  39. on MachineRoles.RoleId equals r.RoleId into Rolz
  40. from Rolz2 in Rolz.DefaultIfEmpty()
  41. select new ComputerModel()
  42. {
  43. MachineId = m.MachineId,
  44. GroupId = m.GroupId,
  45. SoftwareVersionId = m.SoftwareVersionId,
  46. GroupName = Groups.GroupName,
  47. SoftwareVersion = SoftwareVersions.Version,
  48. IPAddress = m.IPAddress,
  49. HostName = m.HostName,
  50. MACAddress = m.MACAddress,
  51. Title = m.Title,
  52. IsIGMonitor = m.IsIGMonitor,
  53. UpTime = m.UpTime,
  54. DateEntered = m.DateEntered,
  55. DateUpdated = m.DateUpdated,
  56. EnteredBy = EnteredByUser.FirstName + " " + EnteredByUser.LastName,
  57. UpdatedBy = UpdatedByUser.FirstName + " " + UpdatedByUser.LastName,
  58. MachineRoles = m.MachineRoles,
  59. Roles = ?????
  60. }).ToList();
Add Comment
Please, Sign In to add comment