【发布时间】:2017-10-25 04:36:49
【问题描述】:
我有一个填充 StaffHierarchySearchViewModel 视图模型的 LINQ 查询。我正在尝试在我的业务逻辑层 (BLL) 中填充 StaffHierarchySearchViewModel 并将这些结果返回给我的控制器。当我尝试在我的方法中返回 results 值时,返回结果行出现错误。我收到以下错误:Cannot implicitly convert type 'System.Collections.Generic.IEnumerable<WebReportingToolDAL.Models.ViewModels.StaffHierarchySearchViewModel>' to 'WebReportingToolDAL.Models.ViewModels.StaffHierarchySearchViewModel'. An explicit conversion exists (are you missing a cast?)' 我尝试了其他解决方法,但似乎仍然无法让返回值起作用。
namespace WebReportingToolBLL
{
public class StaffHierarchySearch
{
private Collections_StatsEntities db = new Collections_StatsEntities();
public StaffHierarchySearchViewModel StaffHierarchySearchViewModel(string SearchString)
{
IEnumerable<StaffHierarchySearchViewModel> results = from sa in db.SecurityAccesses
join ss in db.SecuritySystems on sa.System equals ss.SystemID
join s in db.Staffs on sa.EmpID equals s.EmpID
join u in db.Units on s.UnitID equals u.UnitID
join h in db.Hierarchies on sa.EmpID equals h.EmpID
join t in db.Staffs on h.TeamID equals t.EmpID
where sa.ID == SearchString
select new WebReportingToolDAL.Models.ViewModels.StaffHierarchySearchViewModel
{
ID = sa.ID,
SystemName = ss.SystemName,
LastName = s.LastName,
FirstName = s.FirstName,
UnitName = u.UnitName,
EffectiveStart = h.EffStart,
EffectiveEnd = h.EffEnd,
ManagerFirstName = t.FirstName,
ManagerLastName = t.LastName,
Search = SearchString
};
return results;
}
}
}
【问题讨论】:
-
您似乎缩短了错误消息。请发布完整的消息。
-
好吧,你的函数必须返回一个虚拟机的 IEnumerable 而不是一个实例
-
我更新了我的帖子以显示完整的错误消息
标签: linq model-view-controller viewmodel ienumerable business-logic-layer