【发布时间】:2017-01-15 14:02:17
【问题描述】:
我是 MVC 的初学者,我有一个 Web 应用程序,在我的控制器中我声明了一个对象列表(来自访问者的反馈),然后将其发送到显示它的视图。它看起来像这样。声明:
public class TrekFeedbackItem
{
public string trekid { get; set; }
public string comment { get; set; }
public string author { get; set; }
public TrekFeedbackItem(string trekid, string comment, string author)
{ this.trekid = trekid;
this.comment = comment;
this.author = author;
}
}
及用法:
List<TrekFeedbackItem> feedbackList = new List<TrekFeedbackItem>
{
//constructor called, data entered into the list
}
return View(trekname, feedbackList);
但是,现在我还需要传递另一个列表,我们称之为 relatedblogsList。作为第一步,我决定将我的 feedbackList 封装到 ViewModel 中(一旦它工作,添加另一个不同对象的列表。)
public class TrekViewModel
{
public List<TrekFeedbackItem> feedback { get; set; }
}
并像这样填充数据:
TrekViewModel trek = new TrekViewModel();
trek.feedback = new List<TrekFeedbackItem>
{
//insert data here
};
return View(view, trek);
问题是 - 如何将此模型发送到局部视图以及如何访问它?
非常感谢
【问题讨论】:
-
在视图中,您插入的是 TrekViewModel 类的对象,而不是列表本身。 “跋涉”不是一个列表。
-
您需要将局部视图的模型设置为
TrekViewModel
标签: c# asp.net-mvc asp.net-mvc-4 model asp.net-mvc-partialview