how come this works:
var query = _context.Routing_Tool
.Where(rt => rt.Id == id)
.FirstOrDefault();
return query;
but this does not
var query = _context.Routing_Tool
.Join(_context.Routing_Tool_Prioritization_Matrix,
rt => rt.Id,
rp => rp.RoutingToolId,
(rt, rp) => new
{
Id = rt.Id,
Title = rt.Title,
LoeName = rp.LoeName,
}
)
.Where(rt => rt.Id == id)
.FirstOrDefault();
return query;
instead, I get and implicitly convert type error After I try to join a table. Help is appreciated
The whole new method - Including the old one I was working on for reference.
public Routing_Tool GetItemsInitById(int id)
{
//var query = (from rt in _context.Set<Routing_Tool>()
// join rp in _context.Set<Routing_Tool_Prioritization_Matrix>()
// on rt.Id equals rp.RoutingToolId into grouping
// from rp in grouping.DefaultIfEmpty()
// select new Routing_Tool {
// Id = rt.Id,
// Title = rt.Title,
// Classification = rt.Classification,
// MainPOC = rt.MainPOC,
// RequestingDirectorate = rt.RequestingDirectorate,
// IsEnduring = rt.IsEnduring,
// IsApproved = rt.IsApproved,
// IsAssociated = rt.IsAssociated,
// DirectingRequirement = rt.DirectingRequirement,
// RequirementDescription = rt.RequirementDescription,
// RequestType = rt.RequestType,
// // LoeName = rp.LoeName,
// // LoePriority = rp.LoePriority,
// }
// ).FirstOrDefault();
// return query;
var query = _context.Routing_Tool
.Join(_context.Routing_Tool_Prioritization_Matrix,
rt => rt.Id,
rp => rp.RoutingToolId,
(rt, rp) => new
{
Id = rt.Id,
Title = rt.Title,
}
)
.Where(rt => rt.Id == id)
.FirstOrDefault();
return query;
//return _context.Routing_Tool.FirstOrDefault(p => p.Id == id);
}