在ASP.NET MVC3 razor中,我们无法直接将数据集绑定到WebGrid,就像我们在ASP.NET中一样。我们是否总是需要使用模型?是否需要先将我的DataTable转换为列表?
答案 0 :(得分:0)
在ASP.NET MVC中,使用Models
将数据从控制器传递到视图,这里有一些链接可帮助您开始使用webgrid。
Best Beginner guide to webgrid
这在使用MVC时被认为是最佳做法,但是您仍然可以在没有模型的情况下使用webgrid,
以下是迈克网站的一个小例子,他不使用模型。但强烈建议仅使用模型!!!
@{
Layout = "~/Shared/_Layout.cshtml";
var db = Database.Open("Books");
var sql = "Select BookId, Title, ISBN, Description, FirstName, LastName, Category, DatePublished " +
"From Books Inner Join Authors on Books.AuthorId = Authors.AuthorId " +
"Inner Join Categories on Books.CategoryId = Categories.CategoryId";
var books = db.Query(sql);
var columns = new []{"BookId", "Title", "ISBN", "Category"};
var grid = new WebGrid(books, columnNames : columns);
}
<p>The time is @DateTime.Now </p>
<div id="grid">
@grid.GetHtml()
</div>