当前位置: 首页 > 工具软件 > CYQ.Data > 使用案例 >

学习CYQ.DATA

鞠子轩
2023-12-01

这个ORM最近开源了, 所以看一下,

一.入门指南

下载框架后解压出: 

1:CYQ.Data.dll和CYQ.Data.Xml(方法注释提示)

2:CYQ.Data.ProjectTool.exe (枚举或实体生成器)

3:API 帮助文档一份

4:更新记录.txt

5:VS集成ProjectTool说明.txt

6:智能提示

二:手工下载的,项目添加引用

把 CYQ.Data.dll添加到项目引用中(CYQ.Data.Xml 默认也会被复制引用到Bin目录中)

MSSQL数据库链接示例,这里我只例出了 mssql有的例子,如果看别的方式请到:

http://www.cyqdata.com/cyqdata/article-detail-411

<connectionStrings>
<add name="Conn" connectionString="server=.;database=demo;uid=sa;pwd=123456" providerName="System.Data.SqlClient"/>

<connectionStrings>

 

三.通过自带的工具生成 ProjectTool 生成 数据类

    这个很好理解,和别的工具如 EF,一样,可以把数据库的字段生成类.

四.单表的增,册,改

增加:

using(MAction action = new MAction(TableNames.Users))

{
        action.Set(Users.NickName, 
"路过秋天");//非UI型设值

        action.UI.GetFrom(txtUserName)//UI型设值

        if(action.Insert())

        {

           int id=action.Get<int>(Users.ID);//取回插入后的主键ID

        }
}

修改:

using(MAction action = new MAction(TableNames.Users))

{
       action.Set(Users.Password, "http://cyq1162.cnblogs.com"
);
       action.Update(1);
//更新ID为1的密码

}

 

using(MAction action = new MAction(TableNames.Users))

{
       action.Set(Users.Password, 
"http://cyq1162.cnblogs.com"
);
       action.Update(
"UserName='路过秋天'"
);
}

 

using(MAction action = new MAction(TableNames.Users))

{

        action.Set(Users.NickName, "路过秋天");//非UI型设值

        action.Update("id=1",true);//除了已赋值的,其它表字段,自动从Request["字段"]中取值。

}

删除:

using(MAction action = new MAction(TableNames.Users))

{
        action.Delete(1);
}

 

using(MAction action = new MAction(TableNames.Users))

{
        action.Delete(
"1,2,3"
);//批量删除
}

单表查找:

using (MAction action = new MAction("T1_SystemTime"))
            {
               
                if (action.Fill("autoID=2"))/
                {
                    MDataTable table = action.Select("autoID=2");
                    gridControl1.DataSource = table;
                }
               
              }

五.多表sql查找

 string customTable = "select t2_elderly.ElderlyID,T2_Elderly.ElderlyName,T1_Set_CareLevel.NursingRankName from t2_elderly inner join T1_Set_CareLevel on t2_elderly.CareLevelID = T1_Set_CareLevel.CareLevelID";
            int count;
            using (MAction action = new MAction(customTable))
            {

                MDataTable table = action.Select();
                gridControl1.DataSource = table;
            }

六.事务: 这个我还没有试过,不知道对不对.

 

 

  //事务
            using(MAction action = new MAction(TableNames.Users))
{
    action.BeginTransation();
 
    ...执行数据块...
可选1:action.SetTransLevel(IsolationLevel.ReadUncommitted);//自定义事务级别
可选2:action.RollBack();//事务回滚  

可选3:action.ResetTable(新表)//切换表
 
    action.EndTransation();//等同于事务Commit提交
 
    action.BeginTransation();//重新开启新事务
    ...执行语句块2...
    action.EndTransation();//提交新事务Commit提交
}

这些是对一个数据库的操作
这个 ORM 工具,还支 1.多数据库连接, 2.缓存功能,可以在这里查看:
http://www.cyqdata.com/cyqdata/article-cate-33

 类似资料: