我有一个List <>与控制器采取行动的一些数据绑定,我想传递一个列表<>查看与数据网格在Razor视图绑定。
我是新来MVC.Can任何一个可以帮助我如何传递,如何在视图访问。
我有一个List <>与控制器采取行动的一些数据绑定,我想传递一个列表<>查看与数据网格在Razor视图绑定。
我是新来MVC.Can任何一个可以帮助我如何传递,如何在视图访问。
将数据传递到图是简单的传递对象的方法。 看看Controller.View方法
protected internal ViewResult View(
Object model
)
像这样的事情
//controller
List<MyObject> list = new List<MyObject>();
return View(list);
//view
@model List<MyObject>
// and property Model is type of List<MyObject>
@foreach(var item in Model)
{
<span>@item.Name</span>
}
我这样做;
在控制器:
public ActionResult Index()
{
var invoices = db.Invoices;
var categories = db.Categories.ToList();
ViewData["MyData"] = categories; // Send this list to the view
return View(invoices.ToList());
}
鉴于:
@model IEnumerable<abc.Models.Invoice>
@{
ViewBag.Title = "Invoices";
}
@{
var categories = (List<Category>) ViewData["MyData"]; // Cast the list
}
@foreach (var c in @categories) // Print the list
{
@Html.Label(c.Name);
}
<table>
...
@foreach (var item in Model)
{
...
}
</table>
希望能帮助到你
您可以使用动态对象ViewBag
从控制器数据传递到视图。
以下添加到您的控制器:
ViewBag.MyList = myList;
然后,您可以从您的视图存取权限吧:
@ViewBag.MyList
// e.g.
@foreach (var item in ViewBag.MyList) { ... }
创建一个包含您的列表中,您需要为视图的模式和其他的东西。
例如:
public class MyModel { public List<string> _MyList { get; set; } }
从操作方法把你想要的清单示范, _MyList
属性,如:
public ActionResult ArticleList(MyModel model) { model._MyList = new List<string>{"item1","item2","item3"}; return PartialView(@"~/Views/Home/MyView.cshtml", model); }
在您的视图访问模型如下
@model MyModel foreach (var item in Model) { <div>@item</div> }
我认为这将有助于启动。