-1

我正在尝试将旧版 ASP.NET Web 窗体 Web 应用程序项目标识为“代码优先”或“数据库优先”(或“模型优先”)。我的观察是:

  • 未使用实体框架
  • 为 DataSet 访问 SQL 数据库,然后将其写入 XML 文件(用作数据源)
  • 有 .cs 类标识目标数据显示的结构(表格行等)
  • 未使用 XmlDataSource

编辑:该项目似乎是一个 XML-file-as-database 项目,但基于 SQL 数据库;能够通过重新查询 SQL 数据库来重写 XML 数据库。

我觉得这两个步骤有点奇怪,所以我想知道这对于 ASP.NET Web 应用程序是否常见,以及以这种方式处理数据的可能优势是什么。

4

1 回答 1

1

Microsoft 定义了一个DataSet(部分),如下所示:

DataSet 是从数据源检索的数据的内存缓存,是 ADO.NET 体系结构的主要组件。DataSet 由一组 DataTable 对象组成,您可以使用 DataRelation 对象将这些对象相互关联起来。

根据我的经验以及从文档中可以看出的情况,DataSet 不能用于代码优先的方法,因为它没有与实体框架相同的功能。至于 XML:

DataSet 可以将数据和模式作为 XML 文档进行读写。然后可以通过 HTTP 传输数据和模式,并由任何应用程序在任何支持 XML 的平台上使用。

XML(连同相关的 C# 类)是 Visual Studio 项目中数据集的典型格式。随着实体框架的出现,DataSet 不再是访问 ASP.NET 项目(或任何其他 .NET 项目)中数据的推荐方法。

于 2021-06-18T18:25:34.897 回答