Какой элемент управления используется в StackOverflow для отображения сообщений? - PullRequest
0 голосов
/ 27 мая 2009

Я строю сайт в ASP.NET MVC. Я намерен повторить способ отображения сообщений в StackOverflow. Эти ребята используют элемент управления повторителем в ASP.NET MVC? Я хочу получить полный контроль над созданной разметкой, но я также хочу разбить на страницы.

Каков наилучший подход в таком случае.

Ответы [ 2 ]

1 голос
/ 27 мая 2009

Я понятия не имею, как StackOverflow реализует его, но вам не нужно использовать какой-либо элемент управления asp.net.

Конечно, вам нужно создать собственный пейджер.

Посмотрите учебное пособие по NerdDinner, в котором есть раздел, показывающий, как вы можете создать постраничный список. http://weblogs.asp.net/scottgu/archive/2009/04/28/free-asp-net-mvc-nerddinner-tutorial-now-in-html.aspx

Это довольно легко, и вы имеете полный контроль над всей разметкой. Фактически, вы должны предоставить всю разметку, почти ни одна из разметок не генерируется asp.net.

1 голос
/ 27 мая 2009

В MVC я бы предложил использовать комбинацию запроса LINQ в вашем контроллере (или в репозитории, внутри функции, вызываемой из контроллера), цикл for в вашем представлении и в зависимости от того, насколько сложными элементы вы хочу отобразить, частичный вид внутри цикла.

Для разбивки на страницы вы можете передать параметры start и count функции, чтобы получить раздел списка объектов через LINQ. Например:

Function sliceList(ByVal startIndex As Integer, ByVal count As Integer) As Generic.List(Of myObject)
   Dim FullObjectList As Generic.List(Of myObject) = GetObjectsFromSomewhere()
   Dim returnList As New Generic.List(Of myObject)
   returnList = From o In FullObjectList Skip startIndex Take count
   Return returnList
End Function

Затем ваш контроллер передает возвращенный список в представление для отображения, и вы перебираете его, отображая элементы так, как вам нравится.

Надеюсь, это поможет.

...