苏飞论坛

标题: 【分布式系统框架教程】-Dao规则和配置数据库连接字符串 [打印本页]

作者: songwenqi    时间: 2014-11-29 11:28
标题: 【分布式系统框架教程】-Dao规则和配置数据库连接字符串
本帖最后由 songwenqi 于 2014-12-8 09:12 编辑

【分布式系统框架教程】-Dao规则和配置数据库连接字符串

导读部分



1.【分布式系统框架】教程目录帖http://www.sufeinet.com/thread-10624-1-1.html

教程部分


分布式的特点在于可分布,无论是同一服务器的不同数据库还是不同服务器的不同数据库之间都可以轻松的实现数据分布,分布式最大的特点就是打破了传统的依靠数据库来实现子查询等方式来实现表与表之间的关联,而采用框架的方式,运用程序来轻松的实现这种关联,你可以这样想,如果我们同时从不同的数据库取来我们想要的数据然后在程序里再进行处理从而实现我们想要的关联效果,是不是比直接用sql语句where和子查询、内查询速度要快的多呢,而且程序里是可以处理来自不同的服务器上的不同数据库之间的表得关联,这一点传统的方式就显得力不从心了。
这里呢,需要注意一些规则,在dal层里,首先需要配置每一个表对应的数据库的不同的链接字符串。你也可以这么理解,就是配置不同服务器的不同数据库的链接字符串。
[C#] 纯文本查看 复制代码
/// <summary>
    /// 所有表的连接字符串都写在这里,方法统一修改
    /// </summary>
    public static class DbConfig
    {
        /// <summary>
        /// 默认的连接字符串
        /// </summary>
        public readonly static string DefaultConnection ="DefaultConnection";
        /// <summary>
        /// User表的连接字符串
        /// </summary>
        public static readonly string UserConnection ="UserConnection";
        /// <summary>
        /// LoginUser表的连接字符串
        /// </summary>
        public static readonly string LoginUserConnection = "LoginUserConnection";
    }
从上面的代码中我们可以看到,user表喝loginuser表都配置了各自的数据库链接字符串,这里方便管理和修改,对程序扩展很有好处。
其次,我们需要注意的就是dal层中model对应的dal中的代码规范:
1.每一个类只能查询本表的数据,不允许查询多表数据
2.不要使用子查询
3.不要使用链接表
4.每个类要有单子的数据库连接字符串
5.数据库连接字符串配置在DbConfig类中
5.所有的类要继承BaseDAL<T>基类,只允许使用这里面的方法进行查询,如果不够或者有其他需求可以修改,可以更新基类
6.不要直接使用SqlParameter,使用UtilDAL类的方法代替
7.查询语句绝对不允许使用对接字符串的方法  如果不可避免请使用string.Format格式化


作者: 912288184    时间: 2015-4-2 14:39
楼上很多错别字,试问下Dao规则是不是就是指DAL的处理方法?
作者: songwenqi    时间: 2015-4-2 15:16
912288184 发表于 2015-4-2 14:39
楼上很多错别字,试问下Dao规则是不是就是指DAL的处理方法?

是的
作者: htjs0011    时间: 2015-4-3 09:35
膜拜中....!
作者: uucweb    时间: 2015-5-9 17:38
分布式怎么解决事务的关联问题? A库中的A表数据操作失败,B库中的B表数据操作成功,这时事务是怎么关联的?
作者: redcat    时间: 2015-5-22 19:47
错别字
从上面的代码中我们可以看到,user表loginuser表都配置了各自的数据库链接字符串,这里方便管理和修改,对程序扩展很有好处。
作者: kaoronhee    时间: 2015-12-13 21:37
慢慢学习,得消化一段时间
作者: wdyllff    时间: 2016-3-4 12:00
有的提问 怎么没回答呢
作者: 杏炳国懵    时间: 2017-12-6 17:41
好东东,谢谢楼主













作者: 范范    时间: 2018-1-2 21:53
redcat 发表于 2015-5-22 19:47
错别字
从上面的代码中我们可以看到,user表喝loginuser表都配置了各自的数据库链接字符串,这里方便管理 ...

  看的很仔细
作者: 89794415    时间: 2018-11-12 15:41
代价结构简单。通俗易懂。




欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4