Использование WebGrid в MVC3 - PullRequest
0 голосов
/ 29 ноября 2011

Я новичок в ASP.NET MVC3 и отчаянно пытаюсь получить что-то простое, работающее.Я чувствую, что пытаюсь сделать что-то очень простое.Тем не менее, я не могу заставить работать базовую сетку.Я использую настройки по умолчанию в Visual Studio и вот что я сделал:

HomeController.cs

public class HomeController : Controller
{
    public ActionResult Index()
    {
        ViewBag.Message = "Welcome to ASP.NET MVC!";

        List<Person> test = new List<Person>();
        test.Add(new Person("John", "Smith"));
        test.Add(new Person("Bill", "Torr"));

        return View(test);
    }

    public ActionResult About()
    {
        return View();
    }
}

public class Person
{
    public string FirstName { get; set; }
    public string LastName { get; set; }

    public Person(string firstName, string lastName)
    {
        this.FirstName = firstName;
        this.LastName = lastName;
    }
}

Index.cshtml @ {ViewBag.Title = "Домашняя страница";}

<h2>@ViewBag.Message</h2>
<p>
@{
    var grid = new WebGrid(@Model);
    grid.GetHtml();    
}
</p>

Как ни странно, для WebGrid ничего не распечатывается.Я ожидал два ряда.Вместо этого я ничего не получил.Что я делаю не так?

Ответы [ 2 ]

1 голос
/ 29 ноября 2011

Вы забыли строго ввести свой вид и вывести результат метода GetHtml в поток вывода представления. Вот, пожалуйста:

@model IEnumerable<Person>

<h2>@ViewBag.Message</h2>
@{
    var grid = new WebGrid(Model);
}

<p>@grid.GetHtml()</p>

Обратите внимание, как @grid.GetHtml() выводится из раздела кода, который в основном записывает HTML-код сетки в выходной поток. В вашем примере вы вызывали grid.GetHtml() внутри секции кода, но вы ничего не делали с результатами, как, например, вывод их. Вот почему они уходили в забвение.

0 голосов
/ 04 января 2014

Попробуйте также показать, как использовать webgrid и ajax в mvc3 http://www.helpnshareidea.in/2014/01/webgrid-in-mvc3-using-ajax.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...