<address id="xpjh9"><listing id="xpjh9"><meter id="xpjh9"></meter></listing></address>

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
<noframes id="xpjh9">
<noframes id="xpjh9">

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
    <form id="xpjh9"></form><address id="xpjh9"><listing id="xpjh9"><menuitem id="xpjh9"></menuitem></listing></address>

      <noframes id="xpjh9">
      VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
      SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
      當前位置:
      首頁 > 編程開發 > c#教程 >
      • C#教程之[開源]Dapper Repository 一種實現方式

      • 2019-04-13 21:49 來源:未知
      1. 接著上篇[開源]Entity Framework 6 Repository 一種實現方式
      2. 由于Dapper 本身就是輕量級Orm特性,這里參考Creating a Data Repository using Dapper dynamic queries in dapper 代碼,來解決實體類與Expression<Func<T, bool>> predicate問題;
      3. 您可以通過Nuget:Install-Package MasterChief.DotNet.Core.Dapper;
      4. 您可以通過GitHub:MasterChief 查看具體源碼以及單元測試;
      5. 歡迎Star,歡迎Issues;

      插播一條求職#

      1. 小弟擁有多年C#開發經驗,從事過路燈,消防平臺物聯網平臺開發,坐標上海;
      1. 如果貴司在招聘,煩請大佬考慮下,聯系郵箱:MeetYan@outlook.com

      基于Dapper 的Repository實現#

      
      	
      Copy
      public abstract class DapperDbContextBase : IDbContext { #region Constructors /// <summary> /// 構造函數 /// </summary> /// <param name="connectString">連接字符串</param> protected DapperDbContextBase(string connectString) { ConnectString = connectString; } #endregion Constructors #region Properties /// <summary> /// 獲取 是否開啟事務提交 /// </summary> public IDbTransaction CurrentTransaction { get; private set; } #endregion Properties #region Fields /// <summary> /// 當前數據庫連接 /// </summary> public IDbConnection CurrentConnection => TransactionEnabled ? CurrentTransaction.Connection : CreateConnection(); /// <summary> /// 獲取 是否開啟事務提交 /// </summary> public bool TransactionEnabled => CurrentTransaction != null; /// <summary> /// 連接字符串 /// </summary> protected readonly string ConnectString; #endregion Fields #region Methods /// <summary> /// 顯式開啟數據上下文事務 /// </summary> /// <param name="isolationLevel">指定連接的事務鎖定行為</param> public void BeginTransaction(IsolationLevel isolationLevel = IsolationLevel.Unspecified) { if (!TransactionEnabled) CurrentTransaction = CreateConnection().BeginTransaction(isolationLevel); } /// <summary> /// 提交當前上下文的事務更改 /// </summary> /// <exception cref="DataAccessException">提交數據更新時發生異常:" + msg</exception> public void Commit() { if (TransactionEnabled) try { CurrentTransaction.Commit(); } catch (Exception ex) { if (ex.InnerException?.InnerException is SqlException sqlEx) { var msg = DataBaseHelper.GetSqlExceptionMessage(sqlEx.Number); throw new DataAccessException("提交數據更新時發生異常:" + msg, sqlEx); } throw; } } /// <summary> /// 創建記錄 /// </summary> /// <param name="entity">需要操作的實體類</param> /// <returns>操作是否成功</returns> public bool Create<T>(T entity) where T : ModelBase { ValidateOperator.Begin().NotNull(entity, "需要新增的數據記錄"); // insert single data always return 0 but the data is inserted in database successfully //https://github.com/StackExchange/Dapper/issues/587 //List<T> data = new List<T>() { entity }; return CurrentConnection.Insert(new List<T> {entity}, CurrentTransaction) > 0; #region 測試代碼 //string sql = @"INSERT INTO [dbo].[EFSample] // ([ID] // ,[CreateTime] // ,[ModifyTime] // ,[Available] // ,[UserName]) //VALUES // (@ID // ,@CreateTime // ,@ModifyTime // ,@Available // ,@UserName)"; //return CurrentConnection.Execute(sql, entity) > 0; #endregion 測試代碼 } /// <summary> /// 創建數據庫連接IDbConnection /// </summary> /// <returns></returns> public abstract IDbConnection CreateConnection(); /// <summary> /// 刪除記錄 /// </summary> /// <returns>操作是否成功</returns> /// <param name="entity">需要操作的實體類.</param> public bool Delete<T>(T entity) where T : ModelBase { ValidateOperator.Begin().NotNull(entity, "需要刪除的數據記錄"); return CurrentConnection.Delete(entity); } /// <summary> /// 執行與釋放或重置非托管資源關聯的應用程序定義的任務。 /// </summary> public void Dispose() { if (CurrentTransaction != null) { CurrentTransaction.Dispose(); CurrentTransaction = null; } CurrentConnection?.Dispose(); } /// <summary> /// 條件判斷是否存在 /// </summary> /// <returns>是否存在</returns> /// <param name="predicate">判斷條件委托</param> public bool Exist<T>(Expression<Func<T, bool>> predicate = null) where T : ModelBase { var tableName = GetTableName<T>(); var queryResult = DynamicQuery.GetDynamicQuery(tableName, predicate); var result = CurrentConnection.ExecuteScalar(queryResult.Sql, (object) queryResult.Param, CurrentTransaction); return result != null; } /// <summary> /// 根據id獲取記錄 /// </summary> /// <returns>記錄</returns> /// <param name="id">id.</param> public T GetByKeyId<T>(object id) where T : ModelBase { ValidateOperator.Begin().NotNull(id, "Id"); return CurrentConnection.Get<T>(id, CurrentTransaction); } /// <summary> /// 條件獲取記錄集合 /// </summary> /// <returns>集合</returns> /// <param name="predicate">篩選條件.</param> public List<T> GetList<T>(Expression<Func<T, bool>> predicate = null) where T : ModelBase { var tableName = GetTableName<T>(); var queryResult = DynamicQuery.GetDynamicQuery(tableName, predicate); return CurrentConnection.Query<T>(queryResult.Sql, (object) queryResult.Param, CurrentTransaction).ToList(); } /// <summary> /// 條件獲取記錄第一條或者默認 /// </summary> /// <returns>記錄</returns> /// <param name="predicate">篩選條件.</param> public T GetFirstOrDefault<T>(Expression<Func<T, bool>> predicate = null) where T : ModelBase { var tableName = GetTableName<T>(); var queryResult = DynamicQuery.GetDynamicQuery(tableName, predicate); return CurrentConnection.QueryFirst<T>(queryResult.Sql, (object) queryResult.Param, CurrentTransaction); } /// <summary> /// 條件查詢 /// </summary> /// <returns>IQueryable</returns> /// <param name="predicate">篩選條件.</param> public IQueryable<T> Query<T>(Expression<Func<T, bool>> predicate = null) where T : ModelBase { throw new NotImplementedException(); } /// <summary> /// 顯式回滾事務,僅在顯式開啟事務后有用 /// </summary> public void Rollback() { if (TransactionEnabled) CurrentTransaction.Rollback(); } /// <summary> /// 執行Sql 腳本查詢 /// </summary> /// <param name="sql">Sql語句</param> /// <param name="parameters">參數</param> /// <returns>集合</returns> public IEnumerable<T> SqlQuery<T>(string sql, IDbDataParameter[] parameters) { ValidateOperator.Begin() .NotNullOrEmpty(sql, "Sql語句"); var dataParameters = CreateParameter(parameters); return CurrentConnection.Query<T>(sql, dataParameters, CurrentTransaction); } /// <summary> /// 根據記錄 /// </summary> /// <returns>操作是否成功.</returns> /// <param name="entity">實體類記錄.</param> public bool Update<T>(T entity) where T : ModelBase { ValidateOperator.Begin().NotNull(entity, "需要更新的數據記錄"); return CurrentConnection.Update(entity, CurrentTransaction); } private DapperParameter CreateParameter(IDbDataParameter[] parameters) { if (!(parameters?.Any() ?? false)) return null; var dataParameters = new DapperParameter(); foreach (var parameter in parameters) dataParameters.Add(parameter); return dataParameters; } private string GetTableName<T>() where T : ModelBase { var tableCfgInfo = AttributeHelper.Get<T, TableAttribute>(); return tableCfgInfo != null ? tableCfgInfo.Name.Trim() : typeof(T).Name; } #endregion Methods }

      使用方法#

      
      	
      Copy
      public class SampleService : ISampleService { private readonly IDatabaseContextFactory _contextFactory; public SampleService(IDatabaseContextFactory contextFactory) { _contextFactory = contextFactory; } /// <summary> /// 創建 /// </summary> /// <param name="sample">EFSample</param> /// <returns></returns> public bool Create(EfSample sample) { using (IDbContext context = _contextFactory.Create()) { return context.Create(sample); } } /// <summary> /// 條件查詢 /// </summary> /// <param name="predicate">The predicate.</param> /// <returns></returns> /// <exception cref="NotImplementedException"></exception> public EfSample GetFirstOrDefault(Expression<Func<EfSample, bool>> predicate = null) { using (IDbContext context = _contextFactory.Create()) { return context.GetFirstOrDefault(predicate); } } /// <summary> /// 根據主鍵查詢 /// </summary> /// <param name="id">The identifier.</param> /// <returns></returns> /// <exception cref="NotImplementedException"></exception> public EfSample GetByKeyId(Guid id) { using (IDbContext context = _contextFactory.Create()) { return context.GetByKeyId<EfSample>(id); } } /// <summary> /// 條件查詢集合 /// </summary> /// <param name="predicate">The predicate.</param> /// <returns></returns> public List<EfSample> GetList(Expression<Func<EfSample, bool>> predicate = null) { using (IDbContext context = _contextFactory.Create()) { return context.GetList(predicate); } } /// <summary> /// 添加判斷是否存在 /// </summary> /// <param name="predicate">The predicate.</param> /// <returns></returns> public bool Exist(Expression<Func<EfSample, bool>> predicate = null) { using (IDbContext context = _contextFactory.Create()) { return context.Exist(predicate); } } /// <summary> /// 腳本查詢 /// </summary> /// <param name="sql">The SQL.</param> /// <param name="parameter">DbParameter[]</param> /// <returns></returns> public List<EfSample> SqlQuery(string sql, DbParameter[] parameter) { using (IDbContext context = _contextFactory.Create()) { return context.SqlQuery<EfSample>(sql, parameter)?.ToList(); } } /// <summary> /// 更新 /// </summary> /// <param name="sample">The sample.</param> /// <returns></returns> public bool Update(EfSample sample) { using (IDbContext context = _contextFactory.Create()) { return context.Update(sample); } } /// <summary> /// 事務 /// </summary> /// <param name="sample">The sample.</param> /// <param name="sample2">The sample2.</param> /// <returns></returns> public bool CreateWithTransaction(EfSample sample, EfSample sample2) { bool result; using (IDbContext context = _contextFactory.Create()) { try { context.BeginTransaction();//開啟事務 context.Create(sample); context.Create(sample2); context.Commit(); result = true; } catch (Exception) { context.Rollback(); result = false; } } return result; } /// <summary> /// 刪除 /// </summary> /// <param name="sample"></param> /// <returns></returns> public bool Delete(EfSample sample) { using (IDbContext context = _contextFactory.Create()) { return context.Delete(sample); } } }

      結語#

      1. Dapper與Entity Framework都是通過IRepository實現,所以您可以通過Ioc切換;
      2. 該篇的單元測試寫法與上篇一致;
      3. 小弟不才,大佬輕拍;

      作者:YanZhiwei

      出處:https://www.cnblogs.com/MeetYan/p/10681353.html

      本站使用「署名 4.0 國際」創作共享協議,轉載請在文章明顯位置注明作者及出處。


      相關教程
      江苏快3 70118e.com | www.66621w.com | yth12.net | 2455d.com | www.71399l.com | 20771122.com | www.431506.com | www.ylg292.com | www.2350c.com | 7335e.com | www.082710.com | www.4938g.com | www.320660.com | www.1116141.com | www.53911a.com | www.40789b.com | 5558940.com | www.228667.com | 1869.com | www.68806.com | ylzz.com | www.30350d.com | 37770795.com | www.38358.com | hg77702.com | www.55885j.com | 20771122.com | 29918jj.com | www.77731u.com | 077ll.com | www.7225b.com | x388388.com | www.21365bet.com | 51200oo.com | www.546411.com | www.713msc.com | 5443o.com | www.1168t.com | 553322EE.com | www.hyi682.com | www.hg423.com | www.277320.com | www.ly19.com | 983888a.com | www.3933n.cc | www.558552.com | 30019b.com | www.308105.com | www.a1a444.cc | 2934j.com | www.16181r.com | 4556q.com | www.12455d.com | www.8901z.com | 3225g.com | www.4331d.com | hkmh44.com | www.330836.com | www.1700116.com | a5959.com | www.621441.com | www.mp506070.com | 3685a.com | www.355204.com | www.8473h.com | 65005p.com | www.686783.com | www.wns3558.com | 3559b.com | www.9205a.com | www.7893w50.com | hc096.net | www.c5905.com | www.hg2808kk.com | 9464005.com | www.sx1844.com | www.939393.com | 2127s.com | www.81678s.com | www.boma0199.com | hg10f.com | www.942677.com | www.js1199.com | 3258t.com | www.55qxc.com | www.k973.com | 0234.com | www.776873.com | www.85966.com | pj00ee.com | www.77802v.com | www.9737aa.me | 7979xpj.com | 123456jj.cc | www.7406.Co | www.0977711.com | d67890.com | www.590808.com | www.9737cc.me | www.7435z.com | 23778.com | www.4520077.com | www.997558.com | nn500v.com | www.77210j.com | www.499456.com | 3685z.com | 9707365.com | www.p77929.com | www.t7888.com | 3685.com | www.195237.com | www.4521o.com | www.2882389.com | 47749e.com | www.965176.com | www.55060a.com | 6363yy.com | x88833.com | www.599894.com | www.63606f.com | www.sun3388.com | so9999.cc | www.89894d.com | www.3978b.com | www.5504u.com | 11yy8332.com | 0860b.com | www.c129.vip | www.77mgm777.com | www.848xpj.com | boyingyule.com | www.763227.com | www.99094v.com | www.773456.com | 1213mmm.com | bet99331.com | www.390685.com | www.68365h.com | www.1076008.com | 99151g.com | 4052s.com | www.989569.com | www.88xpj68.com | www.91088.com | www.80689.com | 33382pp.com | 3122kk.com | www.3479c.com | www.922424.com | www.www-36222.com | wx3322.com | 047107.com | www.71399i.com | www.5086u.com | www.amjs779.com | www.11086.com | www.85770w.com | jk080.net | 5456.com | 09299333.com | www.361576.com | www.7782n.com | www.7s7777.com | www.hg833.com | www.hg3442.com | jing7773.com | o7742.com | 1468ttt.com | www.hf5889.com | www.ihg5522.com | www.gcw686.com | www.xg189.com | www.44488806.com | 31780000.com | 22qq8331.com | 39199d.com | 3202f.com | www.196702.com | www.66ffn.com | www.js69z.cc | www.7366002.com | www.7759333.com | www.28758d.com | 2255buyu.com | 59964dd.com | 3132121.com | www.301667.com | www.890995.com | www.js0909.com | www.71071x.com | www.66930011.com | 00778x.com | 3846ff.com | 9479.com | ibook8.com | 30006dz.com | www.758799.com | www.033.la | www.99788h.com | www.566733.com | www.1919msc.com | www.pj6366.com | www.767775.com | feicai0898.com | 5443c.com | 8037jj.com | 95c53.com | yl66yl44.com | 459.com | 2013055.com | 5577vn77.com | 3178rr.com | www.589056.com | www.799486.com | www.53911d.com | www.87668k.com | www.dy826.com | www.0194009.com | www.80865.com | www.youxi1314.com | www.0057g.com | www.668cp88.com | www.qmc0044.com | www.rr8866.com | www.65866.com | www.9103ss.com | www.033001.com | www.ag.dl39709.com | www.976000.com | www.wn68.com | www.a1a222.cc | www.ag6969.com | www.vn99.vn | www.bet815.com | www.362838.com | www.7777wns.com | www.9976755.com | www.29856.com | www.r30226.com | www.ljw038.com | www.894929.com | www.hg8375.com | www.8568899.com | www.97780099.net | www.56748.com | www.229sunbet.com | www.tm012.com | www.5504w.com | www.5981a.com | www.86339b.com | www.1559505.com | www.5446b.com | www.6653i.com | www.5522e.cc | www.622703.com | www.131333.com | www.062166.com | yh888n.com | 553322GG.com | 4167r.com | 8722xxxx.com | 99111ll.com | www.682844.com | www.33569900.com | www.7033588.com | www.4446ddd.com | www.pjc22.vip | www.a063801.com | www.hg810.com | www.8039q.com | www.703027.com | www.203035.com | www.178651.com | 56987ff.com | 1114661.com | 016.com | 424138.com | www.6033v.com | www.474.net | www.701556.com | www.38345f.com | www.00778n.com | www.4058d.com | www.yl13444.com | www.77wcw.com | www.389744.com | 11dd8331.com | 34q35.com | 500000458.com | www.cr666.com | www.kj33.com | www.07679k.com | www.26299t.com | www.cp702.vip | 18787h.com | ff555ucom | 2381004.com | www.xpj3368.com | www.491888.com | www.418587.com | www.77801b.com | www.466060.com | 8030h.com | 3404b.cc | www.4xinhao.com | www.hshg22.com | www.69567i.com | www.3978w.com | www.652776.com | 77226556.com | m4255.com | www.0853g.com | www.990909.com | www.3421s.com | www.544aa.cc | yabo.vip | 2096j.com | 2846u.com | www.39678.com | www.e63568.com | www.2350g.com | 333.gg | 566777b.com | www.6666wnsr.com | www.39500o.com | 809h22.com | www.1869n.com | www.567811.com | www.62778833.com | www.399146.com | aa67890.com | 2851g.com | www.390338.com | www.73990y.com | www.962779.com | www.8816z.com | www.91233v.com | 0723.com | www.56520g.com | www.yfcp5688.com | www.54400p.com | 6261621.com | 13789.com | www.vns9978.com | www.10999k.com | www.656zf.com | 7798aa.com | 2306b.com | www.as0003.com | www.9187d.com | www.608986.com | 00778i.com | 32355oo.com | www.98698q.com | www.00fzc.com | 73055.vip | 1597442.com | www.hg173e.com | www.4ttz.com | 91234.com | 7792y.com | www.f4042.com | www.38381.cc | x48m.com | www.326365.com | www.6687t.com | www.c143.vip | 8449uu.com | www.zzzz0291.com | www.l98478.com | xin98556.com | 2267t.com | www.888.ps | www.cp8018.cc | 61652f.com | www.655666c.com | www.8zz66.com | bjqxgs.com | zhcp76.com | www.hg701.com | www.1368g.cc | yzyz02.com | www.mng44.com | www.789zr.net | 2096d.com | 2776n.com | www.4078l.com | www.523121.com | 99306o.com | www.yh95678.com | www.5799.cc | 66300vip04.com | www.689578.com | www.7074.com | 5676559.com | bcylc55.com | www.2208553.com | 77552007.com | ambjla.com | www.0044sun.com | bb888877.com | www.a3a000.net | www.ks2.com | 61610029.com | www.9374s.com | www.ejylc13.com | pj677r.com | www.bwin3388.com | www.4323g.com | 15f2.net | www.cj270.com | www.5484b.com | 600089v.com | www.544569.com | www.870013.com | 9659g.com | www.163a55.com | www.237988.com | 99151c.com | www.4136f.com | pj900.com | 3332949.com | www.55717q.com | 55899q.com | www.h7788s.com | www.41518r.com | pj8114.com | www.zb966.com | www.015ac.com | 3807q.com | www.255723.com | www.54400i.com | www.6033e.com | www.0194004.com | 7742ii.com | www.ks600.net | www.271051.com | 88807u.com | www.58qp.cc | wotuwen.com | www.887hg.com | www.682542.com | 3225a.com | www.99094z.com | yf2666.com | www.pj79777.com | www.394077.com | w32365.com | www.96386h.com | 4036yy.com | www.71071b.com | 07377.com | www.2225156.com | www.919586.com | e2894.com | www.89777i.com | 08778q.com | www.3846s.com | 9737bb.me | www.09527a.com | www.927260.com | jinguan3355.com | www.ihg5599.com | tt888c.com | www.yy17173.com | wnsr8819.com | www.yh95678.com | P35gg.com | www.625966.com | www.ai772.com | 253508.com | www.16878u.com | 75959s.com | www.869934.com | 69444488.com | www.35700cc.com | 00778g.com | www.83568t.com | 7599vv.com | www.sportsinfo8.net | 80368h.com | www.232t.com | 89777t.com | www.522118.com | 80368l.com | www.41685.com | www.235812.com | www.3459g.com | www.580780.com | www.32126q.net | www.710650.com | www.617702.com | www.779635.com | www.112211b.com | www.745568.com | www.38200r.com | www.755216.com | www.3657k.com | www.548177.com | www.87680d.com | www.068wy.com | www.68666o.com | www.c299.com | www.6xinhao.com | www.503489.com | www.3643c.com | www.163770.com | www.msc22.la | 44betbet365.com | www.3846s.com | 19991o.com | www.35252j.com | 3568ff.com | www.48330r.com | yf2777.com | www.7782h.com | www.sjg118.com | www.715699.com | www.88837p.com | 32424q.com | www.vns2016.com | 4195z.com | www.61130.com | 2019lcc | www.692021.com | yhxjaomen.vip | www.5091x.com | www.hg5538.com | www.303204.com | www.34656.com | 8988bb.com | www.88325j.com | 6146j.com | www.50052x.com | www.k8368.net | www.351587.com | www.06263.com | 4037789.com | www.86339v.com | emr9836.com | www.hx5566.com | www.2846p.com | x171717.com | www.cn365m.com | 29918f.com | www.2875f.com | www.h7788g.com | yh888s.com | www.4996jn.com | j333.cc | www.90767.com | www.benz4400s.com | 93936b.com | www.57800p.com | 88347.com | www.6769a1.com | www.k1577.com | 56987rr.com | www.656659.com | 48fhyl.com | 2757j.com | www.hg8jj.com | wb399.com | www.919226.com | www.pj2299.com | 111122ee.com | www.55228k.com | www.10053344.com | 6am.vip | www.42456622.com | www.8520q.com | 444000eee.com | www.9895n.com | 2019c.cc | www.36166a.com | www.cn365w.com | cc2205.com | www.799845.com | www.www-50007000.com | g40033.com | www.wycp1.com | www.255251.com | 3y123.com | www.26299c.com | www.370011.com | 00774jj.com | www.99830.cc | www.259681.com | 0234vv.com | www.3478a.cc | www.2010889.com | 3967b.com | www.938527.com | www.k2678.com | 86611v.com | www.566217.com | www.4963dd.com | 3304x.com | 0730000.com | www.733484.com | 9997383.com | hjdc100.com | www.0343w.com | www.am0676.com | 796666.com | www.43818f.com | www.4116j.com | 2324jjj.com | www.588730.com | www.65066ff.com | zhcp91.com | ca1055.com | www.u8999.com | www.3657e.com | 88894o.com | www.2350s.com | www.dafabetedfa95.com | a7742.com | www.181599.com | www.ee00668.com | www.yddc00.com | 3467z.cc | www.cp500.pw | www.9737xx.com | 1082.com | 706803.net | www.091wy.com | www.qmc0088.com | 7744iii.com | dzjcp88.com | www.49956s.com | www.770405.com | 3258.com | 1669i.com | www.3126x.com | www.799666p.com | 500000891.com | ll5144.com | www.3478e.cc | www.88166s.com | www.55564400.com | 3156xxx.com | www.680780.com | www.vip81619.com | www.88807y.com | 2324fff.com | www.36787e.com | www.48330k.com | www.bali666.com | hx6888.com | 2349014.com | www.55228l.com | www.871817.com | 4255mm.com | cabet266.com | www.701671.com | www.7036gg.com | www.hg88mm.com | 983888q.com | 11ee8331.com | www.c8701.com | www.20000.cc | www.hg56783.biz | dwyl007.com | 18299.com | www.qmfc7.com | www.469702.com | www.i55106.com | 0919666.com | 3565.com | www.959581.com | www.30350c.com | www.hg0318.com | pj08444.com | 914910.com | www.665771.com | www.zzyl67.com | www.60339.com | 888234.com | 30171166.com | 2400017.com | www.86889.cc | www.377666l.com | www.hga8080.com | 6830w.com | 2019lcc | 66300vip48.com | www.57022.cc | www.789ww.com | www.i55106.com | 9694l.com | jixiang6.com | www.271902.com | www.xpj68.com | www.808888l.com | www.hg0092.com | 883399v.com | 38989j.com | 4195uu.com | www.686c.com | www.jsc799.com | www.w10085.com | www.zr1166.com | 3650568.com | 3doprint.com | www.ck8199.com | www.300726.com | www.808888f.com | www.0096ii.com | yd12305.com | bozhongle.com | 6446zz.com | www.743966.com | www.99677l.com | www.88325q.com | www.jsc12315.com | www.70777.com | pppp0066.com | 55545k.com | dq25.com | 4647033.com | www.223085.com | www.ybao5.com | www.9646a.com | www.3410.com | www.384559.com | www.6032888.com | www.p32126.cc | 88770.com | 50029900.com | 1463v.com | 1427.com | ylg12.com | www.379969.com | www.qbwc1.com | www.91233k.com | www.266751.com | www.4078z.com | www.7335xx.com | www.ssb999.com | www.lb0011.com | zhcp51.com | 01885h.com | pj88pp.com | 6572t.com | 3424u.com | xpj25.com | 500000414.com | www.88065a.com | www.599849.com | www.ybao0.com | www.39957c.com | www.ww.68203e.com | www.742588.com | www.3983116.com | www.xfc88.com | www.c01885.com | www.92msc.com | www.hg1767.com | www.77788806.com | www.ylg82.com | q2018q.com | 7989e.com | 3089n.com | 7720.net | wns26.com | 634006.com | 8159ss.cc | 4775544.com | z18.com | 1654t.com | 206402.com | lehu9088.com | zhcp34.com | 3202d.com | 2998u.com | p2894.com | 35252s.com | sss2848.com | zx3144.com | 2381www.com | 98955d.com | 16690022.com | 3049m.com | 9030w.com | 2013.co | 2546c.com | qiji.ph | 87665b.com | 12772255.com | 9949b.com | hgw168w.com | 38818.com | 56988yy.com | 预览w444000.com | 452.com | 36404400.com | youfa777.vip | 6868jj.cc | jiuzhoukefu.com | 4634455.com | www.8124c.com | www.7830t.com | www.z47.cc | www.js5229.com | www.577177b.com | www.a98886.com | www.1168i.com | www.sha8000.com | www.40288x.com | www.l94600.com | www.6858666.com | www.66652b.com | www.918jo.com | www.760169.com | www.323518.com | 66300vip03.com | 44119193.com | dzj15.com | 1443g.com | vns00tt.com | 365spa.com | 37570h.com | www.glc66.com | www.649589.com | www.hg9777.com | www.27363u.com | www.420082.com | www.120638.com | www.0967xx.com | www.39459.cc | www.810262.com | www.165370.com | 888991155.com | 3258t.com | 36405500.com | 30006q.com | www.pu3888.com | www.xpj0028.com | www.a81b.cc | www.955244.com | www.hn58qp.com | www.9818l.cc | www.550247.com | 9649v.com | 4195yy.com | 36400099.com | 83086s.com | www.333133l.com | www.40789b.com | www.f69096.com | www.2418o.com | www.gai40.com | www.101156.com | xl4166.com | 444167.com | 59889h.com | www.3459w.com | www.07773.com | www.ag3366.com | www.81678n.com | www.692918.com | 6641l.com | 463.cc | 56988b.com | www.3459v.com | www.5966ttt.com | www.2283066.com | www.16878x.com | www.399160.com | 9464550.com | 34x35.com | www.aobo9.com | www.725558.com | www.33678dd.com | www.00840j.com | www.108805.com | bj399.com | 44hh8332.com | www.108083.com | www.c155d.com | www.88801.com | www.783386.com | 3568n.com | 4022c.com | www.agg033.com | www.1429h9.com | www.5599msc.com | www.en06.com | bet28u.com | 3467f.com | www.22264400.com | www.1114338.com | www.8c444.com | www.hcjt1.com | 658089.com | 4152e.com | www.boma0194.com | www.8967c.com | www.78700b.com | www.151706.com | 623670.com | 51200oo.com | www.2222092.com | www.pj88p.com | www.594277.com | 1005021.com | 896320.com | www.pj5718.com | www.209576.com | www.771049.com | 700089v.com | 8808555.com | www.665888005.com | www.2997770.com | www.866505.com | 3doprint.com | 66876t.com | www.336246.com | www.mgm777c.com | www.196037.com | v939.com | www.76060f.com | www.00773m.com | www.8039i.com | 6641l.com | 50067c.com | www.228369.com | www.31468.com | www.186769.com | 4165q.com | www.hg558.com | www.2021s.com | www.810523.com | 3016aaa.com | www.68666y.com | www.3157i.com | www.sygj9.com | k2146.com | 22207i.com | www.pj888i.com | www.c4520.com | 3416m.com | www.0686555.com | www.4136h.com | www.912452.com | 1005rv.com | www.546005.com | www.06820j.com | www.608850.com | xpj5009.com | www.88807h.com | www.55676s.com | www.082707.com | 45637m.com | www.msc22.com | www.77114p.com | 667766z.com | 2846h.com | www.w32939.com | www.809381.com | b1654.com | www.142336.com | www.7886269.com | 083900.com | 9995b.cc | www.8313d.com | www.665771.com | 22098m.com | www.pj6366.com | www.61655p.com | 2019a.cc | www.4759qq.com | www.ee00668.com | www.43131b.com | 45637b.com | www.twcp03.com | www.810523.com | 4018l.com | www.34563.com | www.2632m.com | ee00558.com | www.66sbet.net | www.ampj3439.com | 1432.com | www.0636g.com | www.e98478.com | 88946000.com | www.668k8.com | www.626332.com | 6868ff.cc | www.g67783.com | www.7036dd.com | 87965ff.com | 2682hd.com | www.xpj6886.com | k47479.com | www.hd1188.com | www.74737.com | 20775511.com | www.pj7333.com | www.hbet96.com | 3009d.com | www.39695.com | www.js520988.com | 8381kk.com | www.3643e.com | www.65707n.com | 10050534.com | www.000943.com | www.979651.com | 3552g.com | www.hga66600.com | www.101220.com | 6868ii.cc | www.66889.am | n5429.com | www.4107k.com | www.49956p.com | 97000.cc | www.hc9055.com | www.477575.com | 2373d.com | www.js89d.vip | 5478z.com | www.88807z.com | www.5854u.cc | 4022y.com | www.6776yy.com | 18438d.com | www.vns333399.com | www.hg0088.so | 0698v.com | www.pj6667.com | www.297757.com | 7335z.com | www.0601n.com | wtx2563.com | www.rb432.com | www.120057.com | www.yh66609.com | www.858466.com | 21117a.com | www.d5680.com | uc01.cc | www.54549900.com | www.75353.cc | 5666711.com | www.630269.com | 1407d.com | www.hg6688.com | www.488018.com | 1407o.com | www.91233q.com | xhtdbaidu.com | www.hg6668.ph | 3550u.com | www.hg0423.com | www.314611.com | www.rbet3365.com | www.34788n.com | 777659111.com | www.0600h.cc | ggg4255.com | www.c155b.com | 99151l.com | www.pj1314.com | www.592411.com | www.661zr.com | www.25688p.com | 9309208.com | www.08xpj58.com | 0343q.com | www.f32939.com | 1665s.com | www.13383.com | 2247cc.com | www.www-36222.com | www.295207.com |