在我的控制器我有一个名为“目标数据”类,它包含一个ID和一个字符串:剃刀视图中的自定义类?
public class ObjectData
{
public int ObjectId { get; set; }
public string Name { get; set; }
}
我想这些列表传递给通过ViewBag的观点,但我不知道如何遍历数组中的项,因为类型不正常。我这样做是因为我不想将一堆对象及其数据传递给视图,因为我只需要ID和名称(这是一个有效的关注点?)。
我想这样的循环通过:
foreach (ObjectData i in ViewBag.ParentSetIds)
{
@Html.ActionLink(i.Name, "Detail", new { objectId = i.ObjectId }, null)
}
但剃刀不识别类类型。这如何实现?
我不完全同意这里的两件事。首先,“剃须刀不使用相同的使用声明”是不正确的。你的Razor视图中有一个'@ using'指令。此外,ViewModels不是“公认的黑客”。我会说他们是“普遍接受的设计决定”。 – 2013-02-15 01:12:26