• FluentData(微型ORM)


    using FluentData;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    
    namespace Test
    {
    
        class Program
        {
            static void Main(string[] args)
            {
                //新增
                int count1 = Context().Sql("insert Worker(wName,did,gid) values( @0,@1,@2)").Parameters("张三1", 1, 2).ExecuteReturnLastId<int>();
    
                var insert = Context().Insert("Worker")
                          .Column("wName", "张三2")
                          .Column("did", 1)
                          .Column("gid", 2);
    
                int count2 = insert.ExecuteReturnLastId<int>();
    
                //删除
                int count3 = Context().Sql("delete Worker where wid = @wid").Parameter("wid", 7).Execute();
                int count4 = Context().Delete("Worker").Where("wid", 8).Execute();
                Worker _model2 = new Worker()
                {
                    wid = 20,
                    wname = "77",
                    did = 10,
                    gid = 11
                };
    
                int count8 = Context().Delete<Worker>("Worker", _model2)
                 .Where(x => x.wid)
               .Execute();
    
                //修改
                var update = Context().Update("Worker")
                         .Column("wName", "66")
                         .Column("did", 66)
                         .Where("wid", 13);
                int count5 = update.Execute();
    
                Worker _model = new Worker()
                {
                    wid = 17,
                    wname = "77",
                    did = 10,
                    gid = 11
                };
                int count7 = Context().Update<Worker>("Worker", _model)
                  .AutoMap(x => x.wid)
                  .Where(x => x.wid)
                  .Execute();
    
                //查询
                //单个对象
                Worker worker = Context().Select<Worker>("*")
                             .From("Worker")
                             .Where("wId = @wId").Parameter("wId", 14)
                             .QuerySingle();
    
                int count6 = Context().Select<int>("count(1)")
                         .From("Worker")
                         .Where("wId = @wId").Parameter("wId", 14)
                         .QuerySingle();
    
    
                //分页
                List<Worker> list = Context().Select<Worker>("*")
                             .From("Worker")
                             .Paging(2, 5)
                             .OrderBy(" wid asc ")
                             .QueryMany();
    
                //反生异常,事务自动回滚
                using (var context = Context().UseTransaction(true))
                {
    
                    context.Sql("insert Worker(wName,did,gid) values( @0,@1,@2)").Parameters("张三1123", 1, 2).ExecuteReturnLastId<int>();
                    context.Sql("update Product set Name = @0 where Id = @1")
                                    .Parameters("Product不存在数据库中", 1)
                                    .Execute();
                    context.Commit();
                }
    
                //存储过程
                var store = Context().StoredProcedure("ssss")
                                          .ParameterOut("UserID", DataTypes.Int32)
                                          .Parameter("UserName", "123");
                                    
                                     
    
                var result = store.QueryMany<Worker>();
                int count9 = store.ParameterValue<int>("UserID");
            }
    
            public static IDbContext Context()
            {
                var context = new DbContext().ConnectionString("server=.;uid=sa;pwd=123;database=Test;", new SqlServerProvider());
                return context;
            }
        }
    
        public class Worker
        {
            public int wid { get; set; }
            public string wname { get; set; }
            public int did { get; set; }
            public int gid { get; set; }
        }
    
    }
  • 相关阅读:
    phpmyadmin详细的图文使用教程
    从入门到深入FIDDLER 2
    TestNG学习-001-基础理论知识
    TestNG学习-002-annotaton 注解概述及其执行顺序
    自动化测试如何解决验证码的问题
    自动化测试 -- 通过Cookie跳过登录验证码
    JMeter学习-012-JMeter 配置元件之-HTTP Cookie管理器-实现 Cookie 登录
    自动化测试框架
    并发和并行概念及原理
    匿名内部实现多线程的两种方式创建
  • 原文地址:https://www.cnblogs.com/lgxlsm/p/5597329.html
Copyright © 2020-2023  润新知