MVC与文章网站

时间:2015-07-27 17:42:16

标签: asp.net asp.net-mvc

我正在创建一个包含大量文章的网站。我为网站创建了一个ArticleController。例如,要实现的第一篇文章是机器语言。所以我创建了一个名为machine_language.cshtml的视图。

    public class ArticleController : Controller
{
    // GET: Article
    public ActionResult Index()
    {
        return View();
    }

    public ActionResult Machine_Language()
    {
        return View();
    }
}

到目前为止,在控制器中我必须编写上面的代码。

所以我的问题是,我有500篇文章需要转换为开头。通常,我为每篇文章创建了一个ASPX页面,但现在我正在创建一个视图,因为我正在使用MVC。

这是否意味着我需要在ArticleController中拥有500多个ActionResults?每个视图/文章一个。

在我开始之前,我想确保我正确地做到这一点,因为它看起来很奇怪。如果我必须为每篇文章的名称创建一个动作结果。我最终会有一个巨大的ArticleController。一旦有几千篇文章,事情就会严重失控。

编辑: P.S.我喜欢用文章的页面。因为它们是静态内容。我试图远离数据库中的图像,视频等大量文章。

2 个答案:

答案 0 :(得分:1)

您如何检索“文章数据/文字”?在这种特殊情况下,我有一个以ArticleText作为属性的视图模型,然后您可能需要其他特定于文章的项目(标签?作者等)。

然后将此视图模型从控制器的操作传递到视图。该视图将负责向用户呈现此特定文章。

通过这种特殊设计,您可以在单一控制器中将单一操作传递给单一视图 强>

在我看来,这是最具扩展性和最佳的方法。

远离网络表单,认为单个“观看体验”等于后端的“单个实体”。这就是MVC的美感和力量(以及可扩展性)。

答案 1 :(得分:-1)

我建议您将现有的aspx页面渲染到使用 iframe 的视图。由于您已经有了静态页面。您只需将页面名称作为每篇文章的参数传递,即可实现您想要的效果。这是另一种方法。即使你想要你可以添加图像到那些aspx页面并在这里显示相同的