【问题标题】:Does Web Matrix (Or ASP.NET Web Pages) have a built in ORM?Web Matrix(或 ASP.NET 网页)是否有内置的 ORM?
【发布时间】:2011-11-27 17:03:34
【问题描述】:

我对 Web 开发的了解一方面可以指望。为了改变这一点,我开始关注 asp.net 网页,因为这项技术的进入技术门槛似乎很低,而且在我看来,它比普通的 HTML 更好。

我一直在研究一些样本,有些东西引起了我的注意。要创建连接并查询数据库,您只需执行以下操作:

@{
  var database = Database.Open("deanvmc");
  var sqlQuery = "SELECT * FROM Articles";
  var data = database.Query(sqlQuery);
}

由此看来,我似乎能够通过以下方式访问返回表中的行数据:

@foreach(var row in data)
{
    <article>
        <h3>@row.Heading</h3>
        <nav>
            <ul>
                <li>@row.DatePosted</li>
                <li>@row.Category</li>
                <li>0 Comments</li>
            </ul>
        </nav>
        <p>@row.SubHeading</p>
    </article>
}

这是一个 ORM 工作吗?假设 row 中包含的对象将始终映射到 sqlQuery 返回的列是否正确?

另外,这是 webmatrix 作为堆栈还是 asp.net 网页作为库的功能?我对一个结束和另一个开始的地方有点困惑。

【问题讨论】:

    标签: webmatrix asp.net-webpages


    【解决方案1】:

    上面的代码没有使用 ORM - 它只是将数据库视图返回的字段映射到查询返回的行对象。所以你的假设是正确的 - 所有对象属性都映射到查询返回的列。

    WebMatrix 本身只是一个 Web 开发工具——它提供了编辑器、模板和其他开发工具类型的东西。您正在使用的库(带有 Razor 和 C# 的 ASP.NET 网页)是构建应用程序的堆栈。 WebMatrix 恰好也支持 PHP 等非 .NET 技术,未来可能会支持更多。

    我知道这是一种开放式的,但希望我能有所帮助。快乐编码!

    【讨论】:

    • 实际上它帮助很大,我还找到了有关数据访问的更多信息,即 Microsoft.Data.dll,它似乎是 ADO.NET 的包装器,可提供对数据的简化访问.我还在消化,但我正在更好地处理它。
    猜你喜欢
    • 1970-01-01
    • 2018-07-29
    • 1970-01-01
    • 1970-01-01
    • 2011-09-03
    • 1970-01-01
    • 2014-09-29
    • 1970-01-01
    • 2021-07-17
    相关资源
    最近更新 更多