Moon.ORM--配置说明

  1. 下载代码生成器(库也在代码生成器的根目录中)
     
    (顺便说说MOON相对其他ORM的优势:)
  2. 找到配置文件进行配置(实际项目中也一样).
  3. 配置默认的系统数据库类型(
                                各类数据库的配置
    选择一个你系统的数据库配置(根据你的数据库类型只选其一)

    1.MYSQL的配置 


    2.Sqlite的配置
                 3.PostgreSql的配置
     

    4.MSSQL的配置

     

     

  4. 给大家一个全配置,到时候好引用,记住只要其中一种类型
    <appSettings>
            <!--SQLITE-->
            
            <add key="dbType" value="SQLITE" />
            <add key="MYSQL_PATH" value="c:\MySql.Data.dll" /> <!--用mysql时设置-->
            <add key="OUT_PUT_PATH" value="D:\" /><!--代码生成到此-->
            <add key="linkString" value="Data Source=Resource.s3db;Version=3;UseUTF16Encoding=True;" />

            <!--MSSQL-->----------------------------------------
            <add key="dbType" value="MSSQL" />
            <add key="linkString" value="Server=www.eee.com.cn;Database=hd01systemdb_new;uid=db;Password=mingyue1;" />
            <!--MYSQL-->---------------------------------------
            <add key="dbType" value="MYSQL" />
            <add key="MYSQL_PATH" value="c:\MySql.Data.dll" />
            <add key="linkString" value="Server=localhost;Database=MoonDB;Uid=root;Pwd=root;" />
            <!--PostgreSql-->---------------------------------
            <add key="dbType" value="PostgreSql" />
            <add key="linkString" value="Server=localhost;Database=MoonDB;User ID=postgres;Password=mingyue;" />
        </appSettings>
  5. 运行代码生成器,以MYSQL为例.(注意此架构必须要有主键.且唯一的主键,非符合主键)      
  1. 给大家看看数据库结构   
                  
  2.        
    项目配置文件   
           
            <add key="dbType" value="MYSQL" />
            <add key="MYSQL_PATH" value="c:\MySql.Data.dll" />
            <add key="linkString" value="Server=localhost;Database=MoonDB;Uid=root;Pwd=root;
    ;Charset=gb2312;
    "
     />
    用代码生成器生成实体层. 加入你要做的项目中.(可以把这段代码复制到项目中,也可以编译引用)

     

    View Code
    using System;
    using Moon.Orm;
    using System.Collections.Generic;
    namespace MoonDB{
    public class recordset:EntityBase{
        public recordset():base(){
        SetEntityName("`recordset`");
        SetFieldsCount(3);
        SetPrimaryField(recordsetTable.RecordID);
        SetIsSystemSetPrimaryKey(true);
        }
        private Int64  _RecordID;
        public Int64 RecordID{
        get{return _RecordID;}
        set{
            _RecordID=value;
            if (this.FieldsChangedDictionary.ContainsKey("`RecordID`")==false)
                {this.FieldsChangedDictionary.Add("`RecordID`",value);}        
    }
        }
        private Int64  _UserID;
        public Int64 UserID{
        get{return _UserID;}
        set{
            _UserID=value;
            if (this.FieldsChangedDictionary.ContainsKey("`UserID`")==false)
                {this.FieldsChangedDictionary.Add("`UserID`",value);}        
    }
        }
        private String  _Sumary;
        public String Sumary{
        get{return _Sumary;}
        set{
            _Sumary=value;
            if (this.FieldsChangedDictionary.ContainsKey("`Sumary`")==false)
                {this.FieldsChangedDictionary.Add("`Sumary`",value);}        
    }
        }
    }

    public class recordsetTable{
        public static readonly Field RecordID=new Field("`RecordID`",true);
        public static readonly Field UserID=new Field("`UserID`",false);
        public static readonly Field Sumary=new Field("`Sumary`",false);
        static recordsetTable(){
            RecordID.TableName="`recordset`";
            UserID.TableName="`recordset`";
            Sumary.TableName="`recordset`";
        }
    }

    public class userset:EntityBase{
        public userset():base(){
        SetEntityName("`userset`");
        SetFieldsCount(4);
        SetPrimaryField(usersetTable.ID);
        SetIsSystemSetPrimaryKey(true);
        }
        private String  _UserName;
        public String UserName{
        get{return _UserName;}
        set{
            _UserName=value;
            if (this.FieldsChangedDictionary.ContainsKey("`UserName`")==false)
                {this.FieldsChangedDictionary.Add("`UserName`",value);}        
    }
        }
        private Int32  _Age;
        public Int32 Age{
        get{return _Age;}
        set{
            _Age=value;
            if (this.FieldsChangedDictionary.ContainsKey("`Age`")==false)
                {this.FieldsChangedDictionary.Add("`Age`",value);}        
    }
        }
        private Int64  _ID;
        public Int64 ID{
        get{return _ID;}
        set{
            _ID=value;
            if (this.FieldsChangedDictionary.ContainsKey("`ID`")==false)
                {this.FieldsChangedDictionary.Add("`ID`",value);}        
    }
        }
        private String  _Address;
        public String Address{
        get{return _Address;}
        set{
            _Address=value;
            if (this.FieldsChangedDictionary.ContainsKey("`Address`")==false)
                {this.FieldsChangedDictionary.Add("`Address`",value);}        
    }
        }
    }

    public class usersetTable{
        public static readonly Field UserName=new Field("`UserName`",false);
        public static readonly Field Age=new Field("`Age`",false);
        public static readonly Field ID=new Field("`ID`",true);
        public static readonly Field Address=new Field("`Address`",false);
        static usersetTable(){
            UserName.TableName="`userset`";
            Age.TableName="`userset`";
            ID.TableName="`userset`";
            Address.TableName="`userset`";
        }
    }

    }

     

    实际项目

     

     最后一步进行开发.

     

     

     
    using System;
    using System.Collections.Generic;
    using System.Data;
    using MoonDB;
    using Moon.Orm;
     
    namespace Test
    {
        class Program
        {
            public static void Main(string[] args)
            {
                userset user=new userset();
                user.Age=12;
                user.UserName="qsmy12345"+DateTime.Now.Ticks;
                user.Address=user.UserName;
                object newID=DBFactory.Add(user);
                Console.WriteLine();
                Console.WriteLine(user.GetOnlyMark());
                user.Address=DateTime.Now+"a秦仕川a";
                DBFactory.Update(user);
                string name=DBFactory.GetOneField<string>(usersetTable.Address,usersetTable.ID.Equal(newID));
                List<userset> list=DBFactory.GetEntities<userset>(usersetTable.ID.BiggerThan(0));
                Console.WriteLine(list[0].Address);
                Console.Read();
                
            }
        }
    }

     MYSQL.sql文件,自己还原下载

    View Code
    SET @saved_cs_client     = @@character_set_client;
    SET character_set_client = utf8;
    /*!50001 CREATE TABLE `new_view` (
      `id` bigint(20),
      `username` varchar(50)
    ) ENGINE=MyISAM 
    */;
    SET character_set_client = @saved_cs_client;
    /*!40101 SET @saved_cs_client     = @@character_set_client */;
    /*!40101 SET character_set_client = utf8 */;
    CREATE TABLE `recordset` (
      `RecordID` bigint(20NOT NULL AUTO_INCREMENT,
      `UserID` bigint(20NOT NULL,
      `Sumary` varchar(1000NOT NULL,
      PRIMARY KEY (`RecordID`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    /*!40101 SET character_set_client = @saved_cs_client */;
    /*!40101 SET @saved_cs_client     = @@character_set_client */;
    /*!40101 SET character_set_client = utf8 */;
    CREATE TABLE `userset` (
      `UserName` varchar(50CHARACTER SET utf8 DEFAULT NULL,
      `Age` int(11DEFAULT NULL,
      `ID` bigint(20NOT NULL AUTO_INCREMENT,
      `Address` varchar(1000CHARACTER SET utf8 DEFAULT NULL,
      PRIMARY KEY (`ID`)
    ) ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=latin1;
    /*!40101 SET character_set_client = @saved_cs_client */;
    INSERT INTO `userset` VALUES ('qsmy其实',12,1,NULL),('qsmy其实11',12,2,NULL),('qsmy其实11',12,3,NULL),('qsmy其实11',12,4,NULL),('qsmy其实11',12,5,NULL),('qsmy其实11',12,6,NULL),('qsmy其实11',12,7,NULL),('qsmy其实11',12,8,NULL),('qsmy其实11',12,9,NULL),('qsmy其实11',12,10,NULL),('qsmy其实11',12,11,NULL),('qsmy其实11',12,12,NULL),('qsmy其实11',12,13,NULL),('qsmy其实11',12,14,NULL),('qsmy其实11',12,15,NULL),('qsmy其实11',12,16,NULL),('qsmy其实11',12,17,NULL),('qsmy其实11',12,18,NULL),('qsmy其实11',12,19,NULL),('qsmy其实11',12,20,NULL),('qsmy其实11',12,21,NULL),('qsmy其实11',12,22,NULL),('qsmy其实11',12,23,NULL),('dd',123,24,NULL),('dd',123,25,NULL),('dd',123,26,NULL),('dd',123,27,NULL),('dd',123,28,NULL),('dd',123,29,NULL),('dd',123,30,NULL),('dd',123,31,NULL),('dd',123,32,NULL),('dd',123,33,NULL),('dd',123,34,NULL),('dd',123,35,NULL),('dd',123,36,NULL),('dd',123,37,NULL),('dd',123,38,NULL),('dd',123,39,NULL),('dd',123,40,NULL),('dd',123,41,NULL),('dd',123,42,NULL),('dd',123,43,NULL),('dd',123,44,NULL),('dd',123,45,NULL),('dd',123,46,NULL),('aaa',11,47,NULL),('aaa',11,48,NULL),('aaa',11,49,NULL),('aaa',11,50,NULL),('aaa',11,51,NULL),('aaa',11,52,NULL),('aaa',11,53,NULL),('aaa',11,54,NULL),('qsmy12345',12,55,NULL),('qsmy12345634694104416406250',12,56,NULL),('qsmy12345634694105064218750',12,57,NULL),('2012-4-7 15:49:36???',12,58,NULL),('2012-4-7 15:52:45???',12,59,NULL),('2012-4-7 15:54:34???',12,60,NULL),('2012-4-7 15:55:01???',12,61,NULL),('2012-4-7 15:56:44???',12,62,NULL),('2012-4-7 15:57:56a???a',12,63,NULL),('2012-4-7 16:00:46a???a',12,64,'qsmy12345634694112457343750'),('qsmy12345634694113184531250',12,65,'2012-4-7 16:01:59a???a'),('qsmy12345634694114936718750',12,66,'2012-4-7 16:04:54a秦仕川a'),('qsmy12345634694115219687500',12,67,'2012-4-7 16:05:22a秦仕川a'),('qsmy12345634694115920781250',12,68,'2012-4-7 16:06:32a秦仕川a'),('qsmy12345634694116243125000',12,69,'2012-4-7 16:07:05a秦仕川a'),('qsmy12345634694116477187500',12,70,'2012-4-7 16:07:28a秦仕川a'),('qsmy12345634694117010468750',12,71,'2012-4-7 16:08:21a秦仕川a');
    /*!50001 DROP TABLE IF EXISTS `new_view`*/;
    /*!50001 SET @saved_cs_client          = @@character_set_client */;
    /*!50001 SET @saved_cs_results         = @@character_set_results */;
    /*!50001 SET @saved_col_connection     = @@collation_connection */;
    /*!50001 SET character_set_client      = utf8 */;
    /*!50001 SET character_set_results     = utf8 */;
    /*!50001 SET collation_connection      = utf8_general_ci */;
    /*!50001 CREATE ALGORITHM=UNDEFINED */
    /*!50013 DEFINER=`root`@`localhost` SQL SECURITY DEFINER */
    /*!50001 VIEW `new_view` AS select `userset`.`ID` AS `id`,`userset`.`UserName` AS `username` from `userset` */;
    /*!50001 SET character_set_client      = @saved_cs_client */;
    /*!50001 SET character_set_results     = @saved_cs_results */;
    /*!50001 SET collation_connection      = @saved_col_connection */;
posted @ 2012-04-08 16:48  [秦时明月]  阅读(2592)  评论(14编辑  收藏  举报