.net – SqlDataSource与ObjectDataSource

如果一个网页需要一些数据,为什么不只有一个sqlDataSource调用存储过程?为什么要使用ObjectDataSource调用一个业务对象,然后调用存储过程?我明白,构建在.net框架上的其他应用程序(让桌面应用程序)可以访问业务对象,但是如果应用程序永远只是一个Web应用程序呢?

要更清楚:

什么时候应该使用sqlDataSource或ObjectDataSource?

一个人如何激励选择?

解决方法

只有一个sqlDataSource才是完美的,如果它只是一个演示,一个原型,或一个快速的黑客.它很快,很容易,它只是工作,并给你你需要的结果.

然而,当应用程序长期设计和构建时,并且预期(要求,客户愿望,最终数据库模式)可能会改变,那么引入适当的“业务”层可能会更有意义 – 将业务对象建模为对象,然后提供从基础数据库到这些业务对象的映射.

俗话说 – 你可以通过一层间接(或抽象)来解决计算机科学中的任何事情 – 这同样适用.

确定:您可以直接访问数据库,并且确定首先和第一次迭代可能(或可能)最快的方式.但是从长远来看,当应用程序建成后,通常是一个快速而又脏的方式 – 维护成本,维护成本,根据您和您的客户需求进行更改所需的成本和工作将会增长而且很快,在努力的过程中,这种快速解决方案看起来并不好看.

所以总结一下我的观点:是的,最初使用直接的sql数据源可能会更快更容易 – 所以使用它就是重要的一点:为快速演示,一个概念验证样式的应用程序完成任务.但从长远来看,当您看一下应用程序的使用寿命时,通常值得投入更多(设计和编码)的努力来添加这一层抽象,以便您的网页不直接依赖于下面的数据库.

渣子

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....