我是MVC的新手。在这里,我已加入4个表并成功检索了数据,但我不知道如何传递此数据以进行查看。
请任何人帮助我。预先感谢。
控制器代码
public class EditController : Controller
{
public ActionResult Index()
{
MachineTest1DbEntities entity = new MachineTest1DbEntities();
var entryPoint = (from Tt in entity.TransactionTables
join pm in entity.Projectmasters on Tt.ProjectId equals pm.ProjectId
join ps in entity.ProjectStatusmasters on Tt.ProjectStatusId equals ps.ProjectStatusId
join mm in entity.Modulemasters on Tt.ModuleId equals mm.ModuleId
select Tt
);
return View(entryPoint);
}
}
答案 0 :(得分:1)
首先使用要在视图上显示的属性创建自定义模型。
例如
legend: {
align: 'right',
verticalAlign: 'top',
layout: 'horizontal',
floating: true,
useHTML: true,
symbolWidth: 0,
width: 300,
y: 80,
itemMarginTop: 5,
itemMarginBottom: 5,
itemStyle: {
width: 200,
font: 'Helvetica Neue'
},
}
在操作方法中,将所选结果映射到自定义模型。
public class ResultModel
{
public int ProjectId{ get; set; }
public string ProjectName { get; set; }
public string ProjectStatus { get; set; }
}
,然后在您的视图中使用这样的模型:public ActionResult Index()
{
MachineTest1DbEntities entity = new MachineTest1DbEntities();
var result= (from Tt in entity.TransactionTables
join pm in entity.Projectmasters on Tt.ProjectId equals pm.ProjectId
join ps in entity.ProjectStatusmasters on Tt.ProjectStatusId equals
ps.ProjectStatusId
join mm in entity.Modulemasters on Tt.ModuleId equals mm.ModuleId
select new ResultModel
{
ProjectId= Tt.ProjectId,
ProjectName = Tt.ProjectName ,
ProjectStatus =Tt.ProjectStatus
}).ToList();
return View(result);
}
答案 1 :(得分:0)
您必须将.ToList()添加到IQueryable返回的结果中,然后再将其发送到您的视图中。 这将向您的视图发送一个列表,您可以使用foreach(模型中的var项)进行迭代:
public ActionResult Index()
{
var result= (from Tt in entity.TransactionTables
join pm in entity.Projectmasters on Tt.ProjectId equals pm.ProjectId
join ps in entity.ProjectStatusmasters on Tt.ProjectStatusId equals
ps.ProjectStatusId
join mm in entity.Modulemasters on Tt.ModuleId equals mm.ModuleId
select Tt
).ToList();
return View(result);
}