1

我是学习 asp.net MVC 的新手,我试图从我认为的控制器访问一些数据。这是我的代码:

public ActionResult Index(string subcategory)
{
    List<Object> products = db.ListOfProducts(subcategory);

    return View(products);
}

我知道在将 LIST 传递到 VIEW 之后,应该有某种方法可以访问 VIEW 中的数据,但我似乎无法弄清楚如何。通常,当我基于模型创建视图时,我知道通过使用模型对象可以访问我需要的数据,但通常顶部有一个关于模型的定义,在我的情况下没有。

那么如何在我的视图中访问 LISTS 数据呢?

4

3 回答 3

2

将此添加到视图顶部以定义模型类型:

@model List<Object>

您可能需要将其命名为:

@using Systems.Collections.Generic;
@model List<Object>

或者

@model Systems.Collections.Generic.List<Object>
于 2012-12-24T14:44:32.140 回答
1

是的,只需通过添加到您的视图来创建一个强类型视图

 @model IList<Products>

之后你可以像这样迭代你的模型:

@foreach(var prod in Model)
{
   //...
}
于 2012-12-24T14:44:57.677 回答
1

您的 Views 文件夹中应该有一个名为 Index 的对应视图(在与您的控制器名称匹配的子文件夹中 - 因此,如果您的控制器被调用HomeController,您将需要视图文件夹下的“主”文件夹)如果您还没有您可以通过右键单击文件夹并单击“添加视图”来创建视图。

确保您在视图顶部有一个声明,内容如下:

@model Systems.Collections.Generic.List<object>

您现在应该能够通过Model视图的属性访问您的数据。

于 2012-12-24T14:46:17.697 回答