Решено ... модуль узла не был установлен правильно .. запуск npm install несколько раз решил его
Скажем, Ваше действие контроллера смотрит что-то как
public ActionResult List()
{
List<string> myList = database.GetListOfStrings();
(...)
}
Теперь Вы хотите передать свой список представлению, сказать "List.aspx". Вы делаете это при наличии возврата действия ViewResult (ViewResult является подклассом ActionResult). Можно использовать Метод просмотра Контроллера возвратить ViewResult как так:
public ActionResult List()
{
List<string> myList = database.GetListOfStrings();
(...)
return View("List", myList);
}
Чтобы смочь получить доступ к списку способом со строгим контролем типов в Вашем представлении, это должно произойти из ViewPage, где T является типом данных, Вы являетесь передающими в. Таким образом в текущем случае наше представление (в List.aspx.cs) было бы что-то вроде этого:
public partial class List : ViewPage<string>
{
(...)
}
Данные передали в представление, таким образом упоминается как "Видеоданные". Для доступа к данным необходимо пройти ViewData. Свойства модели на ViewPage. Таким образом для рендеринга содержания списка Вы записали бы (в List.aspx)
<ul>
<% foreach(var s in this.ViewData.Model){ %>
<li> <%= s %> </li>
<% } %>
</ul>
Здесь, это. ViewData. Модель имеет тип, Вы указали параметр типа T в ViewPage, таким образом, в нашем случае это. ViewData. Модель имеет список типов.
Можно использовать повторитель для рендеринга материала как это, но я не рекомендовал бы это. Если Вы хотите использовать что-то подобное, проверьте модуль Сетки проекта MvcContrib на CodePlex.
Быстрый и грязный путь состоит в том, чтобы передать его через ViewData
public ActionResult List()
{
ViewData["MyList"] = new List<string> () {"test1", "test2"};
return View ();
}
затем можно получить доступ к нему в представлении
<ul>
<% foreach (string item in (List<string>)ViewData["MyList"]) { %>
<li><%= item %></li>
<% }%>
</ul>
Если я не ошибаюсь, управление повторителем требует модели страницы. (Модель страницы, являющаяся, что классическое использование ASP.NET)
Но необходимо смотреть на эту ссылку: http://haacked.com/archive/2008/05/03/code-based-repeater-for-asp.net-mvc.aspx
ASP.NET MVC имеет пару способов передать данные Вашему Представлению. Основной способ передать Ваши образцовые классы Представлению состоит в том, чтобы включать его в возвращенный класс ViewResult от Вашего контроллера, как ниже:
Function List() As ViewResult
' pass other information in the viewdata dictionary
ViewData("Title") = "All Items"
' get our item list from the Model classes
Dim items = Model.ItemRepository.GetAllItems()
' return as part of result
Return View(items)
End Function
Затем из Вашего представления можно получить доступ к тому списку как ниже:
<% For Each item In ViewData.Model %>
<%=item.Name%>
<% End If %>
Другой метод передающих данных через словарь ViewData как показано в функции контроллера выше. Можно получить доступ к этому из представления как:
<%=ViewData("Title")%>
Надежда, которая помогает.