在SQL Server中编写通用数据访问方法(4)
作者:doorsir 来源:赛迪网技术社区 发布时间:2009-01-20 11:35:00
CustomersData 类实现 IdbCustomers 接口。需要支持新数据源时,只能创建一个实现该接口的新类。
此类型的接口可以类似于如下所示:
using System;
using System.Data;
namespace Common
{
public interface IDbCustomers
{
DataTable GetCustomers();
DataTable GetCustomerOrders(string CustomerID);
DataTable GetCustomersByCountry(string CountryCode);
bool InsertCustomer();
}
}
我们可以创建专用程序集或共享程序集来封装这些数据访问类,在第一种情况下,程序集加载程序将搜索我们在 AppBase 文件夹的配置文件内指定的程序集,或者使用典型探测规则在子目录内进行搜索。如果我们必须与其他应用程序共享这些类,则可以将这些程序集置于全局程序集缓存中。
从其他层使用数据访问类
这两个几乎相同的 CustomersData 类包含在应用程序其余部分将使用的两个不同程序集内。通过下面的配置文件,我们现在可以指定要加载的程序集以及面向的数据源。
可能的配置文件示例将类似于如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="ConnectionString"
value="Server=(local);Database=Northwind;
User ID=UserDemo;Pwd=UserDemo" />
<add key="DALAssembly" value="DALAccess,
version=1.0.0.0, PublicKeyToken=F5CD5666253D6082" />
<!-- <add key="ConnectionString"
value="Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=..\..\..\Northwind.mdb" />
-->
</appSettings>
</configuration>


猜你喜欢
- 一、前言对很多人来说,将PDF转换为可编辑的文本是个刚需,却苦于没有简单的方法。发现 pdf 幻灯片,效果还不错。传统的讲座通常伴随有很多p
- 分组小括号() 有直接分组和命名分组直接分组: ()分组只显示小括号括起来的内容re.findall(r"(name)+
- 以下列出了两种数据库的方法:ASP+Access20001.要获取的ID值字段属性必须设为:自动编号(我们假设字段名为recordID)2.
- 问题产生描述使用子进程处理一个大的日志文件,并对文件进行分析查询,需要等待子进程执行的输出结果,进行下一步处理。出问题的代码# 启用子进程执
- 本文介绍什么是链表,常见的链表有哪些,然后介绍链表这种数据结构会在哪些地方可以用到,以及 Redis 队列是底层的实现,通过一个小实例来演示
- 四兄弟的背景在一个名为编程语言的村庄里,有不同姓氏的村民。例如Java、Python、Golang、JavaScript等姓氏,而接下来要介
- 学习目标1.掌握pytorch模型转换到onnx模型2.顺利运行onnx模型3.比对onnx模型和pytorch模型的输出结果学习大纲pyt
- 新建项目如下图,比如sigma目录是我要上传的项目,在six-sigma目录下新建三个文件,分别是LICENSE也就是开源协议,README
- 费茨法则是人机交互领域里一个非常重要的法则,在10年来得到了广泛的应用。Fitts法则最基本的观点就是任何时候,当一个人用鼠标来移动鼠标指针
- 代码如下:--CAST 和 CONVERT 函数 Percentage DECLARE @dec decimal(5,3), @var va
- 将pandas.DataFrame,pandas.Series的索引设置为datetime64 [ns]类型时,将其视为DatetimeIn
- SUBSTR函数是用来截取数据库某一列字段中的一部分。 在各个数据库的函数名称不一样(真是蛋疼,后发明的数据库难道不能同先发明的一样吗?)
- 前言本节我们继续SQL之旅,本节我们如题来讲讲一些基本知识以及需要注意的地方,若有不妥之处,还望指出,简短的内容,深入的理解。数据库架构和对
- 虚拟环境的搭建为什么要使用虚拟环境#1、使不同应用开发环境相互独立2、环境升级不影响其他应用,也不会影响全局的python环境3、防止出现包
- 正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。先定义cl
- 日常会有很多固定报表需要手动更新,本文将利用python实现多线程运行oracle代码,并利用xlwings包和numpy包将结果写入到指定
- MySQL日志文件相信大家都有很多的了解,MySQL日志文件一般在:/var/log/mysqld.log,下面就教您修改MySQL日志文件
- 1 捕捉一个异常捕捉一个异常 以用0作为除数会得到ZeroDivisionError异常为例,print(1/0)为例程序的持续执行,不因该
- 在以前的日志中讲了怎么制作验证码,这篇就讲讲怎么给验证码加上起干扰效果的杂点。 其实很简单,首先做一个
- 俄罗斯方块是俄罗斯人发明的一款休闲类的小游戏,这款小游戏可以说是很多人童年的主打电子游戏了,本文我们使用 Python 来实现这款小游戏。游