stella forum v1.2的开发报告1-spl数据操作层的使用

spl数据操作层和模型层完成。按照《uml:java程序员指南》的作者的dx实践的思想,挑出最重要的,先让程序运行起来,最近几天是抽空就玩冰封王座,再加上对spl还不是很了解,所以进度是有些慢,但总归是完成了大部分的功能
除了上面的两个外,还有其他的一些项目也有一些进展,工具部分是直接把当初1.1德加入了进来,另外还新增了一个config项目,这个是用来读取参数设定的,数据层接口不必说,自然是有的
这几天一直在用spl,发现这个东西真的是简单易用,现在我只是在分页的时候写了两个存储过程,其他的就都用spl的实体操作完成了,下面贴几个有代表性的代码段,如果你也对spl感兴趣,可以访问这里
http://www.cnblogs.com/tintown/category/12787.html

下面是几个代码段,选自Stella2.SPLDAL.Theme,注意,这些程序并没有完成,可能以后会修改。

        /// <summary>
        /// 得到斑竹列表
        /// </summary>
        /// <param name="themeId">板块编号</param>
        /// <returns>斑竹列表</returns>
        public Stella2.Model.Managers GetManagers(int themeId)
        {
            //**************使用联合查询************

            //从manager表中查用户编号和负责的板块编号
            Query q1=new Query(typeof(ManagerEntity));
            q1.AddAttribute(AttributeType.All);
            //从user表查用户名
            Query q2=new Query(typeof(UserEntity));
            q2.AddAttribute(UserEntity.__NAME);
            //通过用户编号联合查询
            q1.AddJoinQuery(ManagerEntity.__USERID,q2,UserEntity.__ID);
            DataTable dt=q1.Execute();
            Model.Managers ms=new Stella2.Model.Managers();
            foreach(DataRow dr in dt.Rows)
            {
                Model.Manager m=new Stella2.Model.Manager();
                m.UserId=(int)dr[ManagerEntity.__USERID];
                m.ThemeId=(int)dr[ManagerEntity.__THEMEID];
                m.Name=(string)dr[UserEntity.__NAME];

                ms.addManager(m);
            }

            return ms;
        }
        /// <summary>
        /// 添加斑竹
        /// </summary>
        /// <param name="man"></param>
        public void CreateManager(Stella2.Model.Manager man)
        {
            //**************使用事务**************
            //向manager表添加纪录
            Transaction tran=new Transaction();
            ManagerEntity me=new ManagerEntity();
            me.UserId=man.UserId;
            me.ThemeId=man.ThemeId;
            tran.AddSaveObject(me);
            //更改用户角色
            UserProfileEntity up=new UserProfileEntity();
            up.UserId=man.UserId;
            up.Retrieve();
            up.Role=(int)Config.Role.Manager;
            tran.AddSaveObject(up);
            tran.Process();
        }

posted on 2005-04-25 21:54  Notus|南色的风  阅读(747)  评论(0编辑  收藏  举报