当前位置: 首页 > news >正文

织梦搭建网站市场调研报告范文

织梦搭建网站,市场调研报告范文,专门做音箱的网站,网页设计与制作教程课后题答案介绍 dapper是一款轻量级的ORM Dapper 被称为 ORM 之王。 以下是 Dapper 的主要功能#xff1a; 速度快#xff0c;性能快。 更少的代码行。 对象映射器。 静态对象绑定。 动态对象绑定。 轻松处理 SQL 查询。 易于处理存储过程。 直接对 IDBConnection 类进行操作#xf…介绍 dapper是一款轻量级的ORM Dapper 被称为 ORM 之王。 以下是 Dapper 的主要功能 速度快性能快。 更少的代码行。 对象映射器。 静态对象绑定。 动态对象绑定。 轻松处理 SQL 查询。 易于处理存储过程。 直接对 IDBConnection 类进行操作该类提供平滑性并直接对数据库运行查询而不是像我们在 EF 和 Web Page is Unavailable 中那样使用各种对像传递数据。 多查询支持。 支持存储过程。 批量数据插入功能。 Dapper 还允许基于多个输入获取多个数据。 为什么选择Dapper Dapper 是第二快的 ORM 创建项目 1 新建 Dapper.DB 类库 1接口 public interface ISqlDapper  { /// summary      ///       /// /summary      /// typeparam nameT/typeparam      /// param nameentities/param      /// param nameupdateFileds指定插入的字段/param      /// param namebeginTransaction是否开启事务/param      /// returns/returns      int AddT(T entity, ExpressionFuncT, object updateFileds null, bool beginTransaction false); } 引用using Dapper; 2通用方法     public class SqlDapper : ISqlDapper     {         private string _connectionString;         private int? commandTimeout null;         private DbCurrentType _dbCurrentType;         public SqlDapper()         {             _connectionString DBServerProvider.GetConnectionString();         }         public SqlDapper(string connKeyName, DbCurrentType dbCurrentType)         {             _dbCurrentType dbCurrentType;             _connectionString DBServerProvider.GetConnectionString(connKeyName);         }         public SqlDapper(string connKeyName)         {             _connectionString DBServerProvider.GetConnectionString(connKeyName);         } private bool _transaction { get; set; } private IDbConnection _transactionConnection null;         IDbTransaction dbTransaction null; private T ExecuteT(FuncIDbConnection, IDbTransaction, T func, bool beginTransaction false)         {             if (_transaction || dbTransaction ! null)             {                 return func(_transactionConnection, dbTransaction);             }             if (beginTransaction)             {                 return ExecuteTransaction(func);             }             using (var connection DBServerProvider.GetDbConnection(_connectionString, _dbCurrentType))             {                 return func(connection, dbTransaction);             }         } private T ExecuteTransactionT(FuncIDbConnection, IDbTransaction, T func)         {             using (_transactionConnection DBServerProvider.GetDbConnection(_connectionString, _dbCurrentType))             {                 try                 {                     _transactionConnection.Open();                     dbTransaction _transactionConnection.BeginTransaction();                     T reslutT func(_transactionConnection, dbTransaction);                     dbTransaction.Commit();                     return reslutT;                 }                 catch (Exception ex)                 {                     dbTransaction?.Rollback();                     throw ex;                 }                 finally                 {                     dbTransaction?.Dispose();                 }             }         } /// summary         ///          /// /summary         /// typeparam nameT/typeparam         /// param nameentity/param         /// param nameaddFileds指定插入的字段/param         /// param namebeginTransaction是否开启事务/param         /// returns/returns         public int AddT(T entity, ExpressionFuncT, object addFileds null, bool beginTransaction false)         {             return AddRangeT(new T[] { entity }, addFileds, beginTransaction);         }         /// summary         ///          /// /summary         /// typeparam nameT/typeparam         /// param nameentities/param         /// param nameaddFileds指定插入的字段/param         /// param namebeginTransaction是否开启事务/param         /// returns/returns         public int AddRangeT(IEnumerableT entities, ExpressionFuncT, object addFileds null, bool beginTransaction true)         {             Type entityType typeof(T);             var key entityType.GetKeyProperty();             if (key null)             {                 throw new Exception(实体必须包括主键才能批量更新);             }             string[] columns; //指定插入的字段             if (addFileds ! null)             {                 columns addFileds.GetExpressionToArray();             }             else             {                 var properties entityType.GetGenericProperties();                 if (key.PropertyType ! typeof(Guid))                 {                     properties properties.Where(x x.Name ! key.Name).ToArray();                 }                 columns properties.Select(x x.Name).ToArray();             } //mysql批量写入待优化                   string sql $insert into {entityType.GetEntityTableName()}({string.Join(,, columns)})            $values({string.Join(,, columns)});;             return Executeint((conn, dbTransaction)             {                 //todo pgsql待实现                 return conn.Execute(sql, (DBType.Name DbCurrentType.MySql.ToString() || DBType.Name DbCurrentType.PgSql.ToString()) ? entities.ToList() : null, dbTransaction);             }, beginTransaction);         } /// summary         /// 开启事务         /// /summary         /// returns/returns         public ISqlDapper BeginTrans()         {             _transaction true;             _transactionConnection DBServerProvider.GetDbConnection(_connectionString, _dbCurrentType);             _transactionConnection.Open();             dbTransaction _transactionConnection.BeginTransaction();             return this;         } /// summary         /// 提交         /// /summary         public void Commit()         {             try             {                 _transaction false;                 dbTransaction.Commit();             }             catch (Exception ex)             { throw ex;             }             finally             {                 _transactionConnection?.Dispose();                 dbTransaction?.Dispose();             } }         /// summary         /// 回滚         /// /summary         public void Rollback()         {             try             {                 _transaction false;                 dbTransaction?.Rollback();             }             catch (Exception ex)             { throw ex;             }             finally             {                 _transactionConnection?.Dispose();                 dbTransaction?.Dispose();             }         }     } } 3AppSetting  设置Connection 连接 public static class AppSetting  {      public static IConfiguration Configuration { get; private set; } private static Connection _connection; public static string DbConnectionString      {          get { return _connection.DbConnectionString; }      }      public static void Init(IServiceCollection services, IConfiguration configuration)      {          Configuration configuration;          services.ConfigureConnection(configuration.GetSection(Connection));          var provider services.BuildServiceProvider();          _connection provider.GetRequiredServiceIOptionsConnection().Value;          DBType.Name _connection.DBType;      } } public class Connection  {      public string DBType { get; set; }      public string DbConnectionString { get; set; }  }
http://www.zqtcl.cn/news/172655/

相关文章:

  • 我要建个人网站国外免备案虚拟主机
  • 自建站 外贸做旅游网约车的网站
  • 网站关键词优化排名软件东莞网站建设图表
  • 为企业设计网站微信开放平台的发展前景
  • 苏州高端做网站软件开发流程图例子
  • 开发区网站建设公司wordpress中文官网
  • 购物网站项目经验搭建网站流程
  • 网站建设企业蛋糕怎么做网站里导出没有水印的图
  • 享设计网做兼职设计师怎么样何鹏seo
  • 淘宝联盟网站推广位怎么做网站建设小知识
  • 徐州有办网站的地方吗企业做网站多少钱
  • 地铁公司招聘信息网站通江县网站建设
  • 家具网站 模板上海虹口建设局官方网站
  • 网站建站建设哪家好wordpress全站静态
  • 旅游网站建设策划seo顾问多少钱
  • 个人网站注册平台要多少钱彩票网站开发 违法
  • 贵州城乡住房和建设厅网站易企秀网站开发语言
  • 返利网站做鹊桥推广免费的舆情网站入口在哪
  • 网站商城怎么做wordpress图片采集插件
  • 做美团网站代码swoole+wordpress
  • 百度免费资源网站搭建发卡网站要多少钱
  • ip网站怎么做酷家乐手机版
  • cnzz统计代码如何添加到网站上去照片网站源码
  • 我的世界电影怎么做的视频网站网页布局实训心得体会
  • 网站建设公司内部情况凡客诚品陈年
  • 浙江建设职业技术学院迎新网站商务网站建设体会
  • 做网站的目的与意义做家教去什么网站
  • 相城网站建设为什么网站建设价格不一
  • 网站icp备案手续我做的网站平台百度搜不到
  • 本溪网站设计公司ps转页面wordpress插件