ASP.NET企业开发框架IsLine FrameWork系列之六--DataProvider 数据访问(下)

接上文

对文件系统的操作:

对于文件目前内置3中支持对象:XML、TEXT、CONFIG文件,分别位于类库XMLProvider、TextProvider、SuitConfigProvider中,大家可以自己调用,文件操作大多使用静态操作。

    对config文件的操作:

这里还要介绍一SuitConfigProvider类库中的GetItem、GetSection、AppendItem、RemoveElement方法,这几个方法可以快速获得we.config中的Item、节点内容,以及增加、移除节点,例如有个Item信息如下:

<add key="NameABC" value="Data Source=Server IP;User;Password=111111;Integrated Security=no;Enlist=false;Pooling=true;" />

使用SuitConfigProvider.GetItem("NameABC ") 语句就可以立即获得该Item内容

SuitConfigProvider类中的方法实现为静态,用户可以直接调用,下表罗列了方法调用说明:

方法名

说明

static ConfigFileType ConfigType

指明config类型,默认为web应用程序

static string GetItem(string key)

获得某个” add key”Item的值

static Hashtable GetSection(string SectionKey)

获得某个节点的数据,返回HashTable

static string GetConnectionString(string key)

protected internal类型,初始化数据库连接

static bool ModifyItem(string key, string value)

修改一个” add key”Item的值

static bool AppendItem(string key, string value)

添加一个” add key”Item的值

static bool RemoveElement(string Key)

移除” add key”Item

对文本文件操作:

方法名

说明

static string GetContent(string Fileinfo)

2次重载,获得文件内容

static bool CreateFile(string FileInfo)

创建一个文件

static bool AppendFile(string str, string FileInfo)

2次重载,追加文件内容

对XML文件操作:

方法名

说明

static List<Hashtable> GetContent(string FileInfo, string SingleNode)

2次重载,获得文件内容。传入文件为文件路径和根节点名称,每个节点信息储存在HashTable中,并以List<Hashtable>形式返回

static bool CreateFile(string SingleNode, string FileInfo)

创建一个文件,传入文件为文件路径和根节点名称,

static bool AppendFile(string SingleNode, string Element, List<Hashtable> Lht, string FileInfo)

2次重载,追加文件内容,传入文件为根节点内名称、追加节点名称、追加内容结构和追加文件信息。

其中追加内容结构为List<Hashtable>,Hashtable的键名为追加后XML的节点名

Web.config对DataProvider的支援信息(选择配置):

键名

解释

IsLine.Provider.DataProvider.CfgDllName

反射的数据库工厂DLL位置

IsLine.Security.Configuration.TokenKey

加密使用的种子(字符串)

IsLine.Data.Configuration.DBConnectString

数据库连接信息

IsLine.Data.Configuration.TextProviderFileInfo

默认文件位置

IsLine.Data.Configuration.SqlServerConnectString

SQL数据库连接信息

IsLine.Data.Configuration.OracleConnectString

Oracle数据库连接信息

关于IsLine.Data.ContainerDefiner命名空间的缓存支援:

这里要提一下该命名空间下ContainerDefine类的缓存支援。

该类共实现 ISqlContainer, IOracleContainer, IFileContainer, IDisposable四个接口,包括了常见的ADO.Net数据对象,例如DataSet、Reader等,利用OracleProvider或SqleProvider中相关方法获得的数据对象,可以直接赋值给ContainerDefine类下的对应对象,例如:

//声明一个容器

ContainerDefine cd = new ContainerDefine(CacheType.HttpRuntime, "IsLineCache");

//将返回的DataSet对象赋值给cd容器

cd.DataSet = new OracleProvider().ExecuteDataSet(sql,CommandType.StoredProcedure,"TestTable",null)

请大家注意,在生命cd时,构造函数有2个参数,第一个是开启HttpRuntime缓存,第二个参数是缓存的名字,这样cd中的DataSet对象被赋值后,会自动缓存,下次在调用cd.DataSet对象时,将自动从缓存中读取,不需要OracleProvider().ExecuteDataSet()方法重新取数据了,目前缓存支持.Net运行时缓存和上下文缓存,当然缓存策略默认是关闭的,当构造函数接收到上述参数时,才会开启缓存。

有关缓存的详细说明,请参看后面的文章“IsLine.HttpContent.HttpContentProvider命名空间系列”

DataProvider没介绍的内容还有很多,这里就不一一介绍了,也许以后有时间Aicken还会继续写完整的。

附 DataProvider Database方法大全:

方法/字段名

功能

类型

ExecuteNonQuery(string cmdText)

执行传入的sql语句

static int

ExecuteNonQuery(string cmdText, string connectionKey)

使用指定连接字符串connectionKey,执行传入的sql语句,connectionKey必须在web.config文件中有值

static int

ExecuteNonQuery(string cmdText, bool IsUsingDBTransaction, CommandType cmdType, params DbParameter[] commandParameters)

1.IsUsingDBTransaction为是否使用数据库事务。

2.如果cmdType为文本,那么cmdText为sql语句;如果cmdType为存储过程,那么cmdText为存储过程名称

3.如果不需要最后一个参数,则传递null即可

static int

ExecuteNonQuery(string cmdText, string connectionKey, bool IsUsingDBTransaction, CommandType cmdType, params DbParameter[] commandParameters)

使用指定连接字符串connectionKey,其他说明见方法3

static int

ExecuteNonQuery(string cmdText, DbConnection connection, bool IsUsingDBTransaction, CommandType cmdType, params DbParameter[] commandParameters)

使用指定DbConnection执行,其他说明见方法3

static int

ExecuteScalar(string cmdText)

执行传入的sql语句

static object

ExecuteScalar(string cmdText, CommandType cmdType, params DbParameter[] commandParameters)

其他说明见方法3

static object

ExecuteScalar(string cmdText, string connectionKey, CommandType cmdType, params DbParameter[] commandParameters)

使用指定DbConnection执行

static object

ExecuteScalar(string cmdText, DbConnection connection, CommandType cmdType, params DbParameter[] commandParameters)

使用指定DbConnection执行

static object

ExecuteReader(string cmdText)

执行sql语句,返回DbDataReader。注意,调用此方法后,须调用Dispose()释放资源

DbDataReader

ExecuteReader(string cmdText, CommandType cmdType, params DbParameter[] commandParameters)

其他说明见方法3

DbDataReader

ExecuteReader(string cmdText, string connectionKey)

见方法2

DbDataReader

ExecuteReader(string cmdText, CommandType cmdType, string connectionKey, params DbParameter[] commandParameters)

其他说明见方法3

DbDataReader

ExecuteReader(string cmdText, CommandType cmdType, DbConnection connection, params DbParameter[] commandParameters)

见方法4

DbDataReader

ExecuteDataAdapter(string cmdText)

执行sql语句

DbDataAdapter

ExecuteDataAdapter(string cmdText, string connectionKey)

见方法2

DbDataAdapter

ExecuteDataAdapter(string cmdText, CommandType cmdType, params DbParameter[] commandParameters)

其他说明见方法3

DbDataAdapter

ExecuteDataAdapter(string cmdText, CommandType cmdType, string connectionKey, params DbParameter[] commandParameters)

见方法4

DbDataAdapter

ExecuteDataAdapter(string cmdText, CommandType cmdType, DbConnection connection, params DbParameter[] commandParameters)

见方法4

DbDataAdapter

ExecuteDataSet(string cmdText)

执行sql语句

DataSet

ExecuteDataSet(string cmdText, string connectionKey, int some)

使用指定连接字符串connectionKey,其他说明见方法3

DataSet

ExecuteDataSet(string cmdText, CommandType cmdType, string srcTable, string connectionKey, params DbParameter[] commandParameters)

srcTable为填充表的名子,其他说明见方法3

DataSet

ExecuteDataSet(string cmdText, CommandType cmdType, string srcTable, params DbParameter[] commandParameters)

其他说明见方法3

DataSet

ExecuteDataSet(string cmdText, string srcTable)

其他说明见方法3

DataSet

ExecuteDataSet(string cmdText, string srcTable, string connectionKey)

其他说明见方法3

DataSet

Dispose()

释放实例中所有成员,包括各种Reader、Adapter、Connection等

void

ASP.NET企业开发框架IsLine FrameWork系列之六--DataProvider 数据访问(下)相关推荐

  1. ASP.NET企业开发框架IsLine FrameWork系列之五--DataProvider 数据访问(中)

    ASP.NET企业开发框架IsLine FrameWork系列之五--DataProvider 数据访问(中) 接上文 使用DataProvider前,需要先在web.config中配置以下节点,添加 ...

  2. ASP.NET企业开发框架IsLine FrameWork系列之四--DataProvider 数据访问(上)

    ASP.NET企业开发框架IsLine FrameWork系列之四--DataProvider 数据访问(上) 接上文 DataProvider是日常编程中最常用的Provider,它为项目提供了与数 ...

  3. ASP.NET企业开发框架IsLine FrameWork系列之十一--HttpContentProvider 访问缓存

    ASP.NET企业开发框架IsLine FrameWork系列之十一--HttpContentProvider 访问缓存 今天我们来介绍 IsLine.HttpContent.HttpContentP ...

  4. ASP.NET企业开发框架IsLine FrameWork系列之八--AppLogProvider日志框架(下)

    ASP.NET企业开发框架IsLine FrameWork系列之八--AppLogProvider日志框架(下) 接上文 上面的配置实例是按照将日志写入文本文件来配置的(节点具体含义见上文),程序调用 ...

  5. ASP.NET企业开发框架IsLine FrameWork系列之十五--框架配置信息大全(下)

    ASP.NET企业开发框架IsLine FrameWork系列之十五--框架配置信息大全(下) 接上文   三.IsLine.ExceptionProcess 部分 这部分主要管理异常,对异常的管理分 ...

  6. ASP.NET企业开发框架IsLine FrameWork系列之十四--框架配置信息大全(中)

    ASP.NET企业开发框架IsLine FrameWork系列之十四--框架配置信息大全(中) 接上文 上文中讲到配置日志模块的第二步,这篇文章继续给大家介绍日志配置方法. Step 3.在</ ...

  7. ASP.NET企业开发框架IsLine FrameWork系列之十三--框架配置信息大全(上)

    ASP.NET企业开发框架IsLine FrameWork系列之十三--框架配置信息大全(上) IsLine FrameWork一个是支持企业应用系统开发的框架,开发人员可以在其基础上对企业所需的应用 ...

  8. ASP.NET企业开发框架IsLine FrameWork系列之十二--使用Session、Cookie与安全支持

    ASP.NET企业开发框架IsLine FrameWork系列之十二--使用Session.Cookie与安全支持 今天来介绍IsLine.HttpContent.HttpContentProvide ...

  9. ASP.NET企业开发框架IsLine FrameWork系列之十--ExceptionProcessProvider异常框架(下)

    ASP.NET企业开发框架IsLine FrameWork系列之十--ExceptionProcessProvider异常框架(下) 接上文       异常展示 系统异常模块除了记录功能,还有一个很 ...

最新文章

  1. css中哪些属性与创建多列相关,css3中的新增属性有哪些
  2. GDCM:gdcm::Attribute的测试程序
  3. halcon file_exists 检查文件是否存在
  4. 手机验证码登录 添加 区号,国家,国家简写,国家中文名称,国旗展示
  5. 菜鸟教程:Js数据类型
  6. bootbox.js官方文档中文版
  7. lte网络测试用什么软件,LTE_测试软件使用教程.doc
  8. 2022-7 一套鼠标键盘控制两台及以上电脑
  9. asp.net开发wap程序必备:识别来访手机品牌型号(转)
  10. 许晓斌_Maven实战(四)——基于Maven的持续集成实践
  11. blowfish算法c语言,使用Blowfish算法给文件加密
  12. laravel中faker的方法总结
  13. 初识 Arm 处理器
  14. Android动画渲染过程及原理(matrix),matrix动画,动画优化
  15. 我司何晓磊受邀在“科创中国”做”创新”课程分享
  16. android 接口sign,[原创]小米APP登录接口env、envkey、sign、hash算法
  17. Android开发之银联工作密钥,主密钥,传输密钥(加解密图文展示)
  18. python读excel中的sheet
  19. NVIDIA JETSON TX1刷机重装系统笔记
  20. NOIP模拟赛 太阳神

热门文章

  1. MySQL数据库优化技术概述
  2. Spring中使用byType实现Beans自动装配
  3. 关于数组方面的算法分析
  4. DXP 内电层分割
  5. 液化气调压阀爆炸及使用问题分析
  6. XCode4.2 SVN设置
  7. SQL Server 2012之初次安装
  8. 2020前端最新面试题(vue篇)
  9. 6条shell小技巧,让脚本显得不再业余
  10. java properties文件 安全_java 数据库读取工具类(读取config.properties配置文件)[包含线程安全] | 学步园...