Moon.Orm 5.0(MQL版)使用指南及代码生成器新版发布

一、什么是真正的使用sql?

简介:

    问题:在日常开发过程中,我们常常发现一种情况:想直接使用sql语句来完成复杂复杂的逻辑查询.但如果直接使用sql,却无对应的实体类可以使用.

    问题2:MVC中如何在View中返回匿名对象?

    Moon给出的解决方案:

    1)通过代码生成器生成对应的实体类;代码生成器下载地址:http://www.cnblogs.com/humble/p/3312018.html

 

    2)通过GetDictionaryList、ExecuteSqlToDictionaryList等方法获取(当然也支持MQL),List<Dictionary<string,MObject>> 列表对象. 大家可以直接看db中定义的方法.去具体值的时候遍历既可以.MObject是对Object的一个封装,用于存值.当取值的时候可以用形如:a["ID"].To<int>() 的形式取到具体类型的值."ID"不分大小写;

 

    3)通过GetDynamicList,此方法可以获取强类型的List T集合(也解决了第二个问题),虽然返回为

       object,但在.net 4.0下面,您可以用dynamic直接取值.
       string sql22="select * from Score";
       dynamic list22=db.GetDynamicList(sql22,"Score");
       foreach(var a in list22){
            Console.WriteLine(a.ID+"--"+a.ScoreM+"--"+a.UserID+"--"+a.TypeName);
        }

 

 

 

       使用注意:
        /// <summary>
        /// (注意您需要手动自己解决sql注入问题),
        /// 此方法可以获取强类型的List T集合,虽然返回为
        /// object,但在.net 4.0下面,您可以用dynamic直接取值.
        /// dynamic list=db.GetDynamicList( sql, className);
        /// </summary>
        /// <param name="sql">您的sql语句</param>
        /// <param name="className">关乎此sql的查询所用的className(可以随意写,只要满足类名的[命名规则]), 多 个sql语句仅仅参数不一样,可以用同一个className</param>
        /// <returns>强类型的List,但类型为object</returns>
        public  object GetDynamicList(string sql,string className)

 二、MQL及增删改查的使用说明

         博文链接:http://www.cnblogs.com/humble/p/3293500.html

 

 三、Moon.Orm代码生成器

 

 

 三、MQL邀请

 

 

 

 

posted @ 2013-09-19 17:31  [秦时明月]  阅读(2505)  评论(6编辑  收藏  举报