代码之家  ›  专栏  ›  技术社区  ›  Femaref

Web服务中的数据库访问

  •  2
  • Femaref  · 技术社区  · 14 年前

    我目前正致力于一个Web服务实现到一个组合的Web/桌面应用程序(即从不同来源访问)。

    现在有两个问题我真的找不到答案:

    1. 如何以正确的方式访问数据库(静态类)?单身?狄?)?我没有找到任何关于在DI容器中使用Web服务来帮助访问数据库的信息。

    2. 写访问权限呢?这是向数据库提供可写性的正确方法吗?当然,请求将被一个用户ID和一个密钥保护。

    注意:这不是WCF,而是普通的Web服务(即asmx文件扩展名)。

    1 回复  |  直到 14 年前
        1
  •  1
  •   MusiGenesis    14 年前

    从Web服务访问数据库有许多“正确”的方法。就我个人而言,我经常在静态类(或者更准确地说,一个具有一组静态方法的类)中使用ADO.NET,该类通常返回一个数据表(封装在一个数据集中,该数据集可以序列化,因此很容易从Web服务返回)。您也可以使用ORM(如nhibernate),尽管它们总是比ADO.NET有更大的开销,因此是服务器上潜在的负载问题源。

    没有特别的理由不允许从Web服务对数据库进行写访问。如果您的应用程序设计要求将数据库写入(显然是非常常见的要求),那么从Web服务中这样做是非常好的。