MVC5 EF6在不使用模型的情况下从数据库表中读取数据

时间:2015-07-24 08:21:10

标签: c# asp.net entity-framework asp.net-mvc-5

我是MVC5和Entity Framework的新手。 场景就是这个

  1. 我必须从已有的数据库中读取
  2. 只有SELECT语句用于获取数据。
  3. 在View
  4. 中显示为表格/报告

    我不需要模型,因为数据库已经设计并填充了数据。我只需要使用SELECT语句来查询和显示数据。 模型需要在我的场景中不需要的KEY。

    我可以创建DBContext并使用控制器中的上下文来读取要列出的数据并在View

    中显示

    任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

MVC代表(模型视图控制器),分离数据关注点。

<强>型号:

MVC模型包含未包含在视图或控制器中的所有应用程序逻辑。该模型应包含所有应用程序业务逻辑,验证逻辑和数据库访问逻辑。例如,如果您使用Microsoft Entity Framework访问数据库,那么您将在Models文件夹中创建Entity Framework类(.edmx文件)。

视图应仅包含与生成用户界面相关的逻辑。控制器应该只包含返回正确视图或将用户重定向到另一个操作所需的最小逻辑(流控制)。其他一切都应该包含在模型中。

一般来说,你应该争取胖模型和瘦控制器。您的控制器方法应该只包含几行代码。如果控制器动作太胖,那么您应该考虑将逻辑移出到Models文件夹中的新类。

查看:

HomeController类,Index()和About()公开的两个控制器操作都返回一个视图。视图包含发送到浏览器的HTML标记和内容。使用ASP.NET MVC应用程序时,视图等效于页面。

您必须在正确的位置创建视图。 HomeController.Index()操作返回位于以下路径的视图:

\视图\主页\的Index.aspx

HomeController.About()操作返回位于以下路径的视图:

\视图\主页\ About.aspx

通常,如果要返回控制器操作的视图,则需要在Views文件夹中创建一个与控制器同名的子文件夹。在子文件夹中,您必须创建一个与控制器操作同名的.aspx文件。

<强>控制器:

控制器负责控制用户与MVC应用程序交互的方式。控制器包含ASP.NET MVC应用程序的流控制逻辑。当用户发出浏览器请求时,控制器确定要发送回用户的响应。

控制器只是一个类(例如,Visual Basic或C#类)。示例ASP.NET MVC应用程序包含一个名为HomeController.cs的控制器,位于Controllers文件夹中。 HomeController.cs文件的内容在清单2中重现。

这是关于理解MVC的好视频。 http://www.asp.net/mvc/videos/mvc-2/how-do-i/understanding-models-views-and-controllers