您的位置:首页 > 其它

Net开源HelloData之:系统配置

2013-04-06 01:16 381 查看
HelloData的系统配置尽量的简洁明了,也让操作更加快捷。

1、

首先配置日志模块:

Logger.Current.SetLogger = new ConsoleLog();
Logger.Current.IsOpenLog = true;
Logger.CurrentLog.Info("INSTALLING");


日志里面包含了常见的Debug,Error,Info等,调用方式就Logger.CurrentLog.Info("INSTALLING");或者Logger.CurrentLog.Error("INSTALLING");现已经加入了log4net,nlog的匹配,调用直接new LogNet();如果有其他的日志系统,也可以继承ILog,然后setLogger中实例化即可全局使用当前配置的日志。当然记得一定要OpenLog才行。以下是内置的consoleLog的效果



2、

//设置数据库连接执行状况
AppCons.LogSqlExcu = true;


AppCons.LogSqlExcu当这个配置开启后,会记录下操作内部执行的每一条sql语句,方便调试,如果是参数化的操作,同时会记录下每一个参数名跟参数值。

3、

//设置第一个数据库
AppCons.SetDefaultConnect(new SQLliteHelper(), ConfigurationManager.AppSettings["ConnectionString1"]);


此操作为设置当前数据库操作的第一个链接,因为HelloData支持多个数据库同时操作,所以就有了设置多个数据库的操作;

//设置第二个数据库
AppCons.SetSecondConnect(new MySqlHelper(), ConfigurationManager.AppSettings["ConnectionString1"]);
//设置更多个数据库
AppCons.SetMoreConnect(new SQLliteHelper(), ConfigurationManager.AppSettings["ConnectionString2"]);


逻辑层使用数据库切换的时候

int index默认为0,表示操作第一个及设置的默认数据库,如果设置为1的话就表示执行的是第二个数据库的操作,以此类推,从而达到了多个数据库直接操作。

4、

//是否需要数据库全局参数化
AppCons.IsParmes = false;


此设置为内部的orm拼接的sql是以何种方式拼接,如果是true的话,会加传值方式为参数化传值,如果是false的话就是普通的sql语句,参数化的好处就是防止了sql攻击。

5、

//是否数据库操作的缓存
AppCons.IsOpenCache = false;
//使用第三方的分布式缓存
//AppCons.CurrentCache =new  RedisCache();
//使用内置的webcache缓存
AppCons.CurrentCache = new WebCache();


缓存的设置,当开启缓存后,操作数据库的链接就会大大的减少,缓存的key是以当前操作的对象跟操作条件为基准的。缓存支持rediscache,webcache等,如需扩展可以继承ICache

/// <summary>
/// 插入缓存,使用相对过期时间
/// </summary>
/// <param name="key"></param>
/// <param name="value"></param>
void Insert(string key, object value);
/// <summary>
/// 设置key的缓存
/// </summary>
/// <param name="key"></param>
/// <param name="entry"></param>
void Set(string key, object entry);
/// <summary>
/// 获取key缓存
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="key"></param>
/// <returns></returns>
T Get<T>(string key);
/// <summary>
/// 获取所有缓存
/// </summary>
List<string> GetKeys();

/// <summary>
/// 清除所有缓存
/// </summary>
void RemoveAll();
/// <summary>
/// 移除缓存
/// </summary>
/// <param name="key"></param>
void Remove(string key);
/// <summary>
/// 根据Key的前缀删除缓存
/// </summary>
void RemoveByPreFix(string prefix);


以上为基本的设置,其余的设置都是基于各个操作对象。

未完待续。。。。。

1、写在新工作之前的一个下雨天。HelloData 开源net Orm框架。自创,希望大家喜欢。

2、HelloData之:数据库model的生成。

3、HelloData之:数据库之逻辑层的生成。

下载地址:https://github.com/xiaose1205/HelloData
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐