1个模型在一个视图中拆分为3个表,这可能吗?
1 model split into 3 tables in one view, is it possible?
我有 1 个模型和数据库,有 3 个不同的存储过程,它们将一个主要 table 的内容分类为 3 个较小的子部分,将它们输出为单独的列表。我为 3 个存储过程的结果创建了一个包含 3 列的视图。是否可以将 3 个不同的存储过程添加到同一个视图中?请参阅下图了解我的意思。
存储过程都是非常基本的 SELECT
语句,有点像根据满足的条件将 table 分为 3 个不同的子部分。
我的控制器代码现在没有到达第二个和第三个视图,因为它只能 return 一次。可以在这里写点什么吗?
public ActionResult Index()
{
using (var context = new ApplicationDbContext())
{
var none = context.Applications.SqlQuery("dbo.metNoCriteria").ToList();
var basic = context.Applications.SqlQuery("dbo.metBasicCriteria").ToList();
var more = context.Applications.SqlQuery("dbo.metMoreCriteria").ToList();
return View(basic);
}
// View(db.Applications.ToList());
}
换句话说 我试图将一个数据库的内容拆分为 3 个部分,并在一个视图中将它们输出为三个不同的 table,如见上文。 (图像不正确,因为 table 包含相同的内容;他们不会这样做)。他们三个都有相同的多边、双边和名称列,但下面的内容对于 3 种颜色会有所不同。
希望有人知道是否有可能做到这一点!
您必须创建一个 viewModel class:
public class TablesViewModel
{
public List<NoneClass> NoneClassList {get; set;}
public List<BaseClass> BaseClassList {get; set;}
public List<MoreClass> MoreClassList {get; set;}
}
行动:
public ActionResult Index()
{
var model=new TablesViewModel();
using (var context = new ApplicationDbContext())
{
model.NoneClassList = context.Applications.SqlQuery("dbo.metNoCriteria").ToList();
model.BaseClassList = context.Applications.SqlQuery("dbo.metBasicCriteria").ToList();
model.MoreClassList = context.Applications.SqlQuery("dbo.metMoreCriteria").ToList();
}
return View(model);
}
在视图内部使用每个列表作为 table 来源。
我有 1 个模型和数据库,有 3 个不同的存储过程,它们将一个主要 table 的内容分类为 3 个较小的子部分,将它们输出为单独的列表。我为 3 个存储过程的结果创建了一个包含 3 列的视图。是否可以将 3 个不同的存储过程添加到同一个视图中?请参阅下图了解我的意思。
存储过程都是非常基本的 SELECT
语句,有点像根据满足的条件将 table 分为 3 个不同的子部分。
我的控制器代码现在没有到达第二个和第三个视图,因为它只能 return 一次。可以在这里写点什么吗?
public ActionResult Index()
{
using (var context = new ApplicationDbContext())
{
var none = context.Applications.SqlQuery("dbo.metNoCriteria").ToList();
var basic = context.Applications.SqlQuery("dbo.metBasicCriteria").ToList();
var more = context.Applications.SqlQuery("dbo.metMoreCriteria").ToList();
return View(basic);
}
// View(db.Applications.ToList());
}
换句话说 我试图将一个数据库的内容拆分为 3 个部分,并在一个视图中将它们输出为三个不同的 table,如见上文。 (图像不正确,因为 table 包含相同的内容;他们不会这样做)。他们三个都有相同的多边、双边和名称列,但下面的内容对于 3 种颜色会有所不同。
希望有人知道是否有可能做到这一点!
您必须创建一个 viewModel class:
public class TablesViewModel
{
public List<NoneClass> NoneClassList {get; set;}
public List<BaseClass> BaseClassList {get; set;}
public List<MoreClass> MoreClassList {get; set;}
}
行动:
public ActionResult Index()
{
var model=new TablesViewModel();
using (var context = new ApplicationDbContext())
{
model.NoneClassList = context.Applications.SqlQuery("dbo.metNoCriteria").ToList();
model.BaseClassList = context.Applications.SqlQuery("dbo.metBasicCriteria").ToList();
model.MoreClassList = context.Applications.SqlQuery("dbo.metMoreCriteria").ToList();
}
return View(model);
}
在视图内部使用每个列表作为 table 来源。