[英]converting query to list (not working) asp.net mvc
I am trying to create a query whose results will be stored in a ViewModel. 我正在尝试创建一个查询,其结果将存储在ViewModel中。 When I try to assign the query variable to the ViewModel's method, I get the following error: "cannot implicitly convert type 'System.Linq.Iqueryable' to 'System.Collections.Generic.List'. An explicit-conversion exists (are you missing a cast?)".
当我尝试将查询变量分配给ViewModel的方法时,出现以下错误:“无法将类型'System.Linq.Iqueryable'隐式转换为'System.Collections.Generic.List'。存在显式转换(您是否缺少演员表?)”。 I tried changing my ViewModel's methods to be of type Iqueryable instead of List which worked but then I couldn't use a foreach loop in my view to loop through my model so I changed it back to List.
我尝试将ViewModel的方法更改为Iqueryable类型,而不是有效的List类型,但是后来我无法在视图中使用foreach循环遍历模型,因此将其更改回List。 I tried doing ToList() after my query but that didn't work either.
我在查询后尝试执行ToList(),但这也不起作用。 Any suggestions/hints/tips are greatly appreciated.
任何建议/提示/提示将不胜感激。 Below is my controller code and my ViewModel code.
以下是我的控制器代码和ViewModel代码。
ViewModel: ViewModel:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using KU_PLAN_DEV.Models;
namespace KU_PLAN_DEV.ViewModels
{
public class TrackViewModel
{
public List<string> TRACK_INFO { get; set; }
public List<string> GEN_ED_HEAD { get; set; }
}
}
Controller method: 控制器方式:
public ActionResult DisplayTrackSheet(string trackButton)
{
var db = new KuPlanEntities();
var trackProgNum = (from info in db.TRACK_INFO
where info.degreeName == trackButton
select info.progNum).ToString();
var trackVerNum = (from info in db.TRACK_INFO
where info.degreeName == trackButton
select info.versionNum).ToString();
/*var queryTrack = (from tracks in db.GEN_ED_HEAD
where tracks.)*/
var trackData = (from trackInfo in db.TRACK_INFO
where trackInfo.progNum == trackProgNum
&& trackInfo.versionNum == trackVerNum
select trackInfo);
var trackDisplayMod = new TrackViewModel
{
TRACK_INFO = trackData
};
return View(trackDisplayMod);
}
var trackDisplayMod = new TrackViewModel
{
TRACK_INFO = trackData.ToList()
};
What error do you get when you make that change? 进行更改时会遇到什么错误?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.