Asp.net mvc ASP.NET MVC为视图提供数据的最佳方法
我想向视图中的表提供数据。数据不仅来自数据库,还来自csv文件Asp.net mvc ASP.NET MVC为视图提供数据的最佳方法,asp.net-mvc,Asp.net Mvc,我想向视图中的表提供数据。数据不仅来自数据库,还来自csv文件 我应该将数据存储在ViewData中,还是应该将其存储在对象中并将其传递给视图?最好的方法是什么,或者我可以使用的其他方法是什么?谢谢 您应该创建一个模型对象,在控制器中填充来自异构源的数据,并将该模型传递给视图。使用强类型视图并将对象直接传递给视图: // Model (PersonRepository class) public static Person Get(Int32 id) { using (MyContext c
我应该将数据存储在ViewData中,还是应该将其存储在对象中并将其传递给视图?最好的方法是什么,或者我可以使用的其他方法是什么?谢谢 您应该创建一个模型对象,在控制器中填充来自异构源的数据,并将该模型传递给视图。使用强类型视图并将对象直接传递给视图:
// Model (PersonRepository class)
public static Person Get(Int32 id) {
using (MyContext context = new MyContext()) {
Person p = context.Person.First(p => Person.id == id);
return p;
}
}
...
// Controller
public ActionResult Show(Int32 id) {
return View(PersonsRepository.Get(id);
}
...
// View
<%@ Page Inherits="System.Web.Mvc.ViewPage<Models.Person>" Title="" Language="C#" %>
<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
<%= Model.Id %> <br />
<%= Model.Name %> <br />
</asp:Content>
//模型(PersonRepository类)
公共静态个人获取(Int32 id){
使用(MyContext context=new MyContext()){
Person p=context.Person.First(p=>Person.id==id);
返回p;
}
}
...
//控制器
公共行动结果显示(Int32 id){
返回视图(PersonsRepository.Get,id);
}
...
//看法
thx,但我该怎么做?我是说如何创建一个模型对象?我看不出你怎么做Person.Id和Person.Name。你可能是指model.Id和model.Name……事实上,这就是目的。修复了。我建议创建一个具有Person属性的PersonViewModel类。