如何将连接数据传递给 MVC 中的视图
How to pass Join Data to View in MVC
我是 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);
}
}
您必须将 .ToList() 添加到 IQueryable 返回结果中,然后将其发送到您的视图。
这将向您的视图发送一个列表,您可以使用 foreach(var item in Model) 进行迭代:
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);
}
首先使用要在视图中显示的属性创建自定义模型。
例如。
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);
}
然后在您的视图中使用这样的模型:@model List<ResultModel>
我是 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);
}
}
您必须将 .ToList() 添加到 IQueryable 返回结果中,然后将其发送到您的视图。 这将向您的视图发送一个列表,您可以使用 foreach(var item in Model) 进行迭代:
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);
}
首先使用要在视图中显示的属性创建自定义模型。
例如。
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);
}
然后在您的视图中使用这样的模型:@model List<ResultModel>