我正在开发一个MVC应用程序,该应用程序使用来自不同实体的数据以及显示当前日期。我想将这些数据从控制器传递到视图。我应该创建一个实体来容纳其他实体吗?
答案 0 :(得分:1)
您可以在此视图模型中创建视图模型并将所需内容放入View中。
public class MyViewModel
{
Entity1 Ent{get;set;}
Entity2 Ent2{get;set;}
DateTime CurrentDate{get;set;}
}
public ActionResult index()
{
MyViewModel model = new MyviewModel();
model.Ent = new Entity1();
model.Ent2 = new Entity2();
model.CurrentDate = DateTime.Now;
return View(model)
}
您的视图现在必须接受VieModel而不是db生成的实体。在视图中,您可以访问
等实体<%:Model.Ent1.SomeProperty%>
<%:Model.CurrentDate%>
<%:Model.Ent2.SomeProperty2%>
答案 1 :(得分:0)
我要做的是创建一个ViewModel,它只保存特定于View的信息,而不是整个实体。
答案 2 :(得分:0)
你真的需要一个单独的实体吗?我得到的是为什么不创建一个匿名对象,它返回所需的实体或只需要所需的属性。通过为每个数据场景设置实体可能会出现潜在问题。