在此之前,我想说我是一个使用模型的新手。如果这个问题有一个简单的答案,请原谅我。
我一直在努力将列出的视图模型恢复为视图模型。为了给出一些背景,我有一个搜索表单从我的ActionResult传递给一个模型,然后过滤出结果。
控制器
public ActionResult GetFilters(MembershipVM model)
{
var uDataList = new List<MembershipVM>();
model = _service.GetFilters(model);
return View("SendEmail", model);
}服务
public List<MembershipVM> GetFilters(MembershipVM model)
{
var query = _context.Members.Where(f => f.Deleted == 0).AsQueryable();
var members = _context.Members.ToList();
query = query.Where(f => agencyTypes.Contains(f.AgencyType));
var uDataList = new List<MembershipVM>();
foreach (var member in members)
{
var uData = new MembershipVM();
uData.Email = member.Email;
uData.AgencyType = member.AgencyType;
...
uDataList.Add(uData);
}
return uDataList;
}如何将列表从"_service.GetFilters“转换为MembershipVM?有没有更好/更简单的方法从"_service.GetFilters“服务中以对象的形式获取结果?
提前谢谢你!
黛西
发布于 2020-08-06 04:08:51
我不确定你在这里想要做什么。首先,您可以从下面的代码中获得过滤器的结果:
model = _service.GetFilters(model);你的方法的定义是:
public List<MembershipVM> GetFilters(MembershipVM model)因此,您可能会认为这是一个结果列表。简而言之,就是结果的集合。
现在,如果你只想把它作为一个实体在你的ActionResult上传递,那么得到你的一个结果就可以了:
return View("SendEmail", model.Take(1).SingleOrDefault());但是为什么你只需要传递一个实体呢?但这应该适用于您当前的需求。
https://stackoverflow.com/questions/63269862
复制相似问题