Noebe v2.0 类库详解 NoebeManager

 

Noebe v2.0 类库详解 NoebeManager

 

 

 

介绍

这个类是Noebe的整体控制体,负责初始化Noebe,获得各种有效资源。

NoebeManager API

属性概览

Pixysoft.Framework.Noebe.Schema.DatabaseSchema

DatabaseSchema
         get schema

Pixysoft.Framework.Noebe.NoebeManager

Instance

Pixysoft.Framework.Noebe.NoebeAdapter

NoebeAdapter
         get noebe adapter

Pixysoft.Framework.Noebe.NoebeCommand

NoebeCommand
         get noebe command

Pixysoft.Framework.Noebe.NoebePrimaryKey

NoebePrimaryKey
         get noebeprimarykey

Pixysoft.Framework.Noebe.Querion

Querion
         get querion

Pixysoft.Framework.Noebe.Session

Session
         get session

Pixysoft.Framework.Noebe.SyncSession

SyncSession
         get syncsession

Pixysoft.Framework.Noebe.SyncTransaction

SyncTransaction
         get syncTransaction

Pixysoft.Framework.Noebe.Transaction

Transaction
         get transaction



方法概览

void

AddBuffer(string[] tables)
         add buffer of table into buffer layer

System.Data.DataSet

GetEntity()
         get all tables from noebe

System.Data.DataTable

GetEntity(string tableName)
         get table by tablename

void

Initialize()
         Init noebe by default path

void

Initialize(string path)
         nit noebe by manual path

void

Initialize(NoebeConfiguration config)
         init noebe by code

void

Initialize(NoebeConfiguration config,  DatabaseSchema ds)
         init noebe by code

Noebe初始化

初次使用Noebe的时候需要初始化,必须调用Initialize()静态方法。

Noebe初始化的过程:



在初始化过程中任意一步失败都会抛出异常。

Noebe为用户提供了4种初始化方法。包括:

l         Initialize(): 无参数初始化,此时Noebe会根据运行环境读取配置文件,默认的运行环境是dll所处的环境。配置文件包括:Noebe.config(必须), Noebe.Schema.config(可选)

l         Initialize(string path): 指定路径读取配置文件。

l         Initialize(config): 代码初始化,方便讨厌写配置文件的朋友。毕竟有些情况配置文件还是不安全的。

l         Initialize(NoebeConfiguration, DatabaseSchema): 代码初始化Noebe配置和数据库架构对象

添加缓存AddBuffer()

用户输入需要缓存的表名,则Noebe能够自动抓取数据库,然后全选表数据,缓存到内存中。

缓存机制说明

Noebe使用MRU算法,即用的最多的数据会被保留下来。同时默认的数据量为每张表50条数据。

获取DataTable: GetEntity()

通过GetEntity()方法能够获得与数据库表结构对应的DataTable对象。

是弱对象,不包含任何的主键、约束等信息。

实质上,DataTable对象是Noebe根据数据库Schema动态生成的。

获取数据库操作对象

数据库操作对象包括Session, Querion等。

这些对象通过接受用户输入的Datatable,然后和Noebe内部的Schema进行比对,当所有结构一致后,再进行数据库相应的操作。

NoebeAdapterNoebeCommand是作为扩展对象存在,完全模拟了DataAdapterCommand操作。因此操作的输入参数DataTable不需要进行内部schema比对。增加了用户操作的灵活性。

后话

NoebeManager使用了Singleton设计模式,同时保证了线程安全。

posted @ 2007-10-16 16:07    阅读(484)  评论(0编辑  收藏  举报
IT民工