Moon.ORM 3.0发布,现在提供下载.

/Files/humble/MOON.ORM使用方法.doc 

加入群:  

216965349

 

 高效便捷的ORM架构Moon.net

    1.背景

    针对Qin.Data的架构设计反应出的一些问题进行了全新的架构设计,弥补了多数据源使用不便、同道反应不过ORM、自身架构的瑕疵等问题.

   2.介绍

   Moon .ORM是一个通用数据库处理框架(可以包含MSSQL POSTGRESQL,SQLITE EXCEL MYSQL DB2 ORACLE...只要你愿意实现接口就可以).很便捷地进行常用数据库操作(增删改查).其性能是几近纯ADO.NET.对于实体的查询采用emit实 现,如果您还不满意可用此框架的代码生成器直接生成纯ADO.NET SQL形式.其主要特色就是性能和便捷的操作.

    3.特色

      1.高性能(该框架采用纯的ADO.NET进行框架,避免Linq以及反射带来的性能损失);

      2.易用性强(配置简单,智能感知,代码生成器的辅助,会sql就可(可以自我性能优化)) ;

      3.多数据库支持(如果需要可自我扩增,热烈欢迎同道加入团队开发中(联系qq:564064202))

      4.强大查询语法糖功能

      5.多数据源支持

      6..net framework 2.0原生支持 

   4.配置简单

  <appSettings> 
<add key="dbType" value="MSSQL" />
<!--数据库的类型 还可以写MYSQL,SQLITE,ACCESS等....—>
<add key="linkString" value="Server=mainserver;database=HD01SystemDB;Uid=sa;Pwd=123" />
</appSettings>

代码功能演示

using System;
using System.Collections.Generic;

using Moon.Orm;
using  MoonDB;

namespace r
{
    
    
    
     class Program
    {
         public  static  void Main( string[] args)
        {
             
             // 数据添加
            PersonSet person= new PersonSet();
            person.Age= 133;
            person.AgePeriod= 1;
            person.IsBeiJing= true;
            person.Sex= true;
            person.UserName= " 秦仕川 ";
            
            DBFactory.Add(person);
            Console.WriteLine( " 新的数据唯一识别标志: "+person.GetOnlyMark());
            
             // 另类数据添加
            person.Set(PersonSetTable.UserName, " 另类 ");
            person.Set(PersonSetTable.Age, 12);
            person.Set(PersonSetTable.AgePeriod, 11);
            person.Set(PersonSetTable.IsBeiJing, false);
            person.Set(PersonSetTable.Sex, true);
            DBFactory.Add(person);
            Console.WriteLine( " 新的数据11唯一识别标志: "+person.GetOnlyMark());
            
             // 数据删除
             long ret= DBFactory.DeleteWhen(PersonSetTable.IsBeiJing.Equal( 1).And(PersonSetTable.Age.BiggerThan( 12)));
            Console.WriteLine( " 被删除的条数: "+ret);
            
             // 改数据
             
             
            person.UserName= " 另类修改后 ";
            person.SetOnlyMark(PersonSetTable.UserName.Equal( " 另类 "));
            DBFactory.Update(person);
            
             // 查询
            PersonSet p=DBFactory.GetEntity<PersonSet>(
                PersonSetTable.UserName.Equal( " 另类修改后 "));
            Console.WriteLine(p.Age);
            
             // 查询一个字段
             int age=DBFactory.GetOneField< int>(PersonSetTable.Age, PersonSetTable.ID.Equal( 5));
            Console.WriteLine(age);
             Console.Write( " Press any key to continue . . .  ");
            Console.ReadKey( true);
            
             
            
        }
    }
}


复制代码

实体代码生成器

 
 

 

数据库升级问题(我们常常面临数据库表的变动问题)

Moon.ORM中不必担心这些东西,因为实体全由代码生成器生成,更新一次数据库,你重新生成一次DLL(代码生成器带有编译功能)

 

 ----------------------------------例子2--------------------

 

/*
 * 由SharpDevelop创建。
 * 用户: qinshichuan
 * 日期: 2011-12-18
 * 时间: 16:47
 * 
 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
 
*/
using System;
using System.Collections.Generic;
using System.Data;

using Moon.Orm;
using MoonDB;
namespace r
{
    
    
    
     class Program
    {
         public  static  void Main( string[] args)
        {
            // ------------------------
            Console.WriteLine( " 1 排序操作-------- ");
            List<UserSet> list=DBFactory.GetEntities<UserSet>(
                UserSetTable.ID.BiggerThan( 0).OrderBy(UserSetTable.UserName, true));
              foreach (UserSet element  in list) {
                Console.WriteLine(element.UserName+ "    "+element.ID);
             }
             // -----------------------------------
            Console.WriteLine( " 2 添加操作------ ");
            UserSet user= new UserSet();
            user.date=DateTime.Now;
            user.datetime=DateTime.Now;
            user.money=123M;
            user.UserName= " 秦时明月 ";
             object newID=DBFactory.Add(user);
            Console.WriteLine( " 新增数据的主键为: "+newID);
            
            
             // -----------------------------
            
            
            
            Console.WriteLine( " 3 修改操作------ ");
            
            UserSet updateUser= new UserSet();
            updateUser.UserName= " 秦时明月-updateUser ";
             // 设置更新目标
            updateUser.SetOnlyMark(user.GetOnlyMark());
            DBFactory.Update(updateUser);
            Console.WriteLine( " 被修改的对象: "+updateUser.GetOnlyMark());
            Console.WriteLine( " 修改后的对象值为: ");
             string name=DBFactory.GetOneField< string>(UserSetTable.UserName ,updateUser.GetOnlyMark());
            Console.WriteLine(name);
            Console.Read();
            
        }
    }
}

 

 

 =====================使用步骤=============

1创建数据库,注意表必须要有主键,建议为自增int64

2设置代码生成器的配置文件

 

<?xml version= " 1.0 " encoding= " utf-8 "?>
<configuration>
    
    
    <connectionStrings>
         
    </connectionStrings>
    <appSettings>
         
        <add key= " dbType " value= " PostgreSql " />//数据库类型
        <add key= " linkString " value= " Server=localhost;Database=MoonDB;User ID=postgres;Password=mingyue; " />//连接字符串
    </appSettings>
</configuration>

 生成代码.

 

3创建项目,引入Moon.ORM

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/humble/archive/2012/03/17/2403374.html

标签:M7LRVCMS3.0 发布于2016年4月22日 关于3.0(包括其他的扫描器速度慢,耗内存)说明 1:我们举个实际点的例子,假设现在有1000个网站,需要扫描的指纹是500个,线程数量是30,假设都要扫描完毕那么一共需要访问网页多少次?如果扫描更多的网站自己计算一下数量 答:50万次(就好比你的电脑在一秒内一口气访问30个网页,并且保持不变),那么请问你的内存不消耗吗?cpu不高?所有的扫描器大概都是这么个原理,要么吃内存,要么吃cpu。 2:关于皮肤加载卡 答:我的程序的皮肤和所谓的传统“皮肤”不是一回事,所有的效果全部是代码画出来的,只不过画的人不是我而已,懂代码的人就知道这是代码画出来的,我只是继承这个皮肤提供的窗体,不是说想加载就加载不想加载就不加载(至少我现在还没找到解决问题) 发布于2016年4月5日 M7lrv CMS 3.0 Beta(测试版) M7lrv CMS 3.0 Beta(测试版) 公开两个群: M7lrvTools交流群 542959428 这个群是一个开发者的群,预计是开放给一些程序开发者的,如果你不懂代码最好不要申请加入(群里主要讲解你在使用我开发的工具类的问题) M7lrvCms程序交流群 478722798 这是一个公开群,对任何人开放,说白了水军群O(∩_∩)O 去年就开始等了,原本说了发布,让你们失望了两次,在这里说句“实在不好意思”! 今天,在这里发布一个测试版(这个版本只为赞助过我小伙伴使用),这里预计测试时间为1个礼拜,然后发布大众版本,所以其他的小伙伴需要在等待一下,实在不好意思,比较别人赞助了 总不可能啥都没有特殊的东西吧?O(∩_∩)O,这里算是赞助过我的小伙伴的一个福利吧,也作为补偿。(没有赞助过我的小伙伴不要来骗我哦,我的qq里面有备注滴,呵呵) 下载地址还是在百度网盘里面,防止下载不了 3.0使用权限说明: http://m7lrv.com/api/m7lrvcms/checkCmsVersion/m7lrvcms3.0_question.txt 3.0exp详细列表: http://m7lrv.com/api/m7lrvcms/checkCmsVersion/CmsExpList.txt 稍微说一下更新说明: 1:exp更新到145个CMS系统(具体太多了没法一一举例,特别说明:免费版去除了getshell功能!!!不要问我为什么,这种简单的问题想想也知道!!) 2:集成了半自动sql注入功能(能够自动爬行网站采集url检查注入漏洞,包括GET注入和POST注入,注入检测功能代码有sqlmap提供,准确率你们说呢?目前测试GET类型的还是很不错的,应该有人看过我的截图的哈哈,POST注入还在测试中有bug的,另外sql注入暂时不提供,蜘蛛功能我打算用py语言编写—我的一个小伙伴帮我开发的,所以这个功能还需要时间,反正我觉得不会比网上那些什么挖掘机啊差!!!) 3:修改cms识别功能的一个bug(这个bug出现很久了但是一直没发现)修改不支持https扫描指纹功能!!(以前代码没有处理https的功能) 4:修改搜索引擎模式,新增到8个搜索引擎,优化百度引擎不能采集详细url的问题,引擎模式大部分采用了配置文件配置(方便维护和更新) 5:集成shell管理功能(已放弃),因为有大神做的比我好我自己就放弃了这个功能,有兴趣这个技术的朋友,如果多的话我可以考虑录制视频讲解一下原理技术 6:优化M7lrvTools工具类(强大到不会写代码都能简单些出expO(∩_∩)O哈哈~),这个工具类我是打算开放给开发者使用的,可以这样说,整个cms识别系统2/3的代码都是由这个dll提供的。 7:优化和集成新的网站接口到M7lrvWeb_Interface文件,这个dll主要提供一些网络上的接口,例如:搜索引擎采集,权重查询,md5解密…等等 7:新增M7lrvSkin皮肤dll文件(暂时不提供使用还在开发中,控件不多,如果有兴趣想要使用的可以联系我索要) 9:优化了M7lrvMessageBox文件的代码自己封装的一个消息提示框的插件(bug还是有不少的,但是勉强能用) 10:优化了exp dll文件代码,提供了三个接口,用户可以根据这三个接口开发自己的exp文件(代码我提供了用户只需要提供exp地址和逻辑判断即可),优化了ini文件的exp配置问题(exp的ini文件配置已经可以使用了) 11:个别功能采用了缓存技术(哈哈说白了就是把东西临时保存一下,用完了就删除) 12:3.0以后采用登录系统,程序需要登录使用(方便用户做了密码记录功能,自动登录功能)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值