2

我正在使用 WebMatrix 开发一个网站。我最近问了一个关于从数据库中获取数据的问题。当我尝试在我的 CSHTML 页面中编写数据逻辑时,我很快就被告知这样做是错误的,因为我违背了 MVC 的原则。问题是,在 Visual Studio 2010 中,MVC 对我来说很容易,每个页面都有一个视图page.aspx和一个控制器page.aspx.cs,但在 WebMatrix 中,我使用的是 Razor C# 语法,所以我的页面只是一个page.cshtml文件。当我创建一个新站点或一个新文件时,没有 MVC 模板,所以我必须自己创建视图和控制器。

如何显示page.cshtml使用控制器从数据库中获取的数据(我的控制器会是“page.cshtml.cs”吗?)?换句话说,如何将页面数据逻辑与其实际内容/标记/视图分开?

4

1 回答 1

3

我认为您将 ASP.NET MVC 与 WebMatrix WebPages 混淆了。您只使用所有代码都在 Razor 模板中的网页。没有控制器的概念。

但即使在 WebMatrix 中,您也可以将数据访问代码分隔在单独的文件中。创建一个名为的特殊文件夹~/App_Code,在此文件夹中您可以创建 .NET 类。例如,您可以有一个DataAccess.cs可以放置数据访问逻辑的文件。您还可以引用您创建的外部程序集。例如:

@using MyNamespace

@{
    DataAccess myClass = new DataAccess();
    ...
}
于 2013-02-07T06:39:42.370 回答