日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
欣賞另一種Orm的設(shè)計風(fēng)格:大道至簡

一、使用sql及存儲過程

創(chuàng)新互聯(lián)建站成立于2013年,我們提供高端重慶網(wǎng)站建設(shè)公司、成都網(wǎng)站制作公司成都網(wǎng)站設(shè)計、網(wǎng)站定制、全網(wǎng)營銷推廣微信平臺小程序開發(fā)、微信公眾號開發(fā)、seo優(yōu)化服務(wù),提供專業(yè)營銷思路、內(nèi)容策劃、視覺設(shè)計、程序開發(fā)來完成項目落地,為汽車玻璃修復(fù)企業(yè)提供源源不斷的流量和訂單咨詢。

1)使用List>

1.使用sql ,體驗原生態(tài)的感覺

 
 
 
 
  1. string sql="select * from Class where ClassName = @";  
  2. string sql2="select * from Class where DateTimem = @";  
  3. List> mylist=db.ExecuteSqlToDictionaryList(sql,"boy'");  
  4. List> mylist2=db.ExecuteSqlToDictionaryList(sql2,DateTime.Parse("2013-10-10 14:40:08"));  
  5. foreach(var oneClass in mylist){  
  6.                     string className=oneClass["className"].To();  
  7.                     long id=oneClass["Classid"].To();  
  8.                     DateTime datetimem=oneClass["datetimem"].To();//不用區(qū)分大小寫  
  9.                     Console.WriteLine(className+"  "+id+"  "+datetimem);  

2.使用mql,智能感知帶來的優(yōu)雅體驗

 
 
 
 
  1. var  list=db.GetDictionaryList(ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(0))) 

2)MQL 全面接觸

2.1 MQL的標(biāo)準(zhǔn)查詢

 
 
 
 
  1. var mm=ClassSet.Select(ClassSet.ClassID,ClassSet.ClassName).  
  2.  
  3. Where(ClassSet.ClassName.Contains("s").And(ClassSet.ClassID.BiggerThan(9)));  
  4.  
  5.    
  6. SELECT [Class].[ClassID],[Class].[ClassName] FROM [Class] WHERE [Class].[ClassName] LIKE @p1  AND  [Class].[ClassID]>@p2  
  7. @p1=%s%  
  8. @p2=9 

2.2 MQL的嵌套查詢(含有Top查詢:支持mysql、oracle、postgreSQL、sqlserver、sqlite)

 
 
 
 
  1. var qiantao=ScoreSet.SelectAll().Where(  
  2.                     ScoreSet.UserID.In(UserSet.Select(UserSet.UserID).Where(  
  3.                         UserSet.ClassID.In(  
  4.                         ClassSet.Select(ClassSet.ClassID).Where(  
  5.                                 ClassSet.ClassName.Equal(c.ClassName).And(ClassSet.ClassID.BiggerThan(0))  
  6.                             )  
  7.                         )  
  8.                     )  
  9.                   )   
  10.                 ).Top(1);  
  11.   SELECT TOP 1 [Score].* FROM [Score] WHERE [Score].[UserID] IN (SELECT [User].[UserID] FROM [User] WHERE [User].[ClassID] IN (SELECT [Class].[ClassID] FROM [Class] WHERE [Class].[ClassName]=@p1  AND  [Class].[ClassID]>@p2 ) )  
  12. @p1=綜合測試ClassName2  
  13. @p2=0 

2.3 MQL的分組查詢

 
 
 
 
  1. var mql=ScoreSet.Select(ScoreSet.ScoreM.Sum().AS("sum"),ScoreSet.TypeName).  
  2.  
  3. Where(ScoreSet.ScoreM.BiggerThanOrEqual(100)).  
  4.  
  5. GroupBy(ScoreSet.TypeName).  
  6.  
  7. Having(ScoreSet.ScoreM.Sum().BiggerThan(300));  
  8.  
  9.    
  10. SELECT SUM([Score].[ScoreM]) AS 'sum',[Score].[TypeName] FROM [Score] WHERE  [Score].[ScoreM]>=@p1  GROUP BY [Score].[TypeName]  HAVING  SUM([Score].[ScoreM])>@p2  
  11. @p1=100  
  12. @p2=300 

2.4 MQL的連接查詢

 
 
 
 
  1. var m1=ClassSet.Select(ClassSet.ClassID,ClassSet.ClassName)  
  2.                     .LeftJoin(  
  3.                     UserSet.Select(UserSet.UserID))  
  4.                     .ON(ClassSet.ClassID.Equal(UserSet.UserID))  
  5.                     .Where(UserSet.UserID.BiggerThan(9));  
  6. SELECT [Class].[ClassID],[Class].[ClassName],[User].[UserID] FROM [Class] LEFT JOIN [User] ON [Class].[ClassID]=[User].[UserID]  WHERE  [User].[UserID]>@p1  
  7. @p1=9 

2.5 MQL的Union查詢

 
 
 
 
  1. var mql=ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(1))  
  2.                     .Union(ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(2)));  
  3.    
  4. var mql=ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(1))  
  5.                     .UnionAll(ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(2)));  
  6.  
  7.    
  8. SELECT [Class].* FROM [Class] WHERE  [Class].[ClassID]>@p1  UNION  SELECT [Class].* FROM [Class] WHERE  [Class].[ClassID]>@p2  
  9. @p1=1  
  10. @p2=2  
  11. SELECT [Class].* FROM [Class] WHERE  [Class].[ClassID]>@p1  UNION ALL SELECT [Class].* FROM [Class] WHERE  [Class].[ClassID]>@p2  
  12. @p1=1  
  13. @p2=2 

2.6 MQL的使用預(yù)覽

 
 
 
 
  1. public static void Main(string[] args)  
  2.         {  
  3.               
  4.             using (var db=Db.CreateDefaultDb()) {  
  5.                 db.TransactionEnabled=true;  
  6.                 db.DebugEnabled=true;  
  7.                 Console.WriteLine("---------------嵌套查詢---------------------");  
  8.                 var qiantao=ScoreSet.SelectAll().Where(  
  9.                     ScoreSet.UserID.In(UserSet.Select(UserSet.UserID).Where(  
  10.                         UserSet.ClassID.In(  
  11.                         ClassSet.Select(ClassSet.ClassID).Where(  
  12.                                 ClassSet.ClassName.Equal(c.ClassName).And(ClassSet.ClassID.BiggerThan(0))  
  13.                             )  
  14.                         )  
  15.                     )  
  16.                   )   
  17.                 ).Top(1);  
  18.                  
  19.                 Console.WriteLine("---------------分組查詢---------------------");  
  20.                 var mql=ScoreSet.Select(ScoreSet.ScoreM.Sum().AS("sum"),ScoreSet.TypeName).Where(ScoreSet.ScoreM.BiggerThanOrEqual(100)).GroupBy(ScoreSet.TypeName).Having(ScoreSet.ScoreM.Sum().BiggerThan(300));  
  21.                 
  22.                 Console.WriteLine("---------------連接查詢---------------------");  
  23.                 var m1=ClassSet.Select(ClassSet.ClassID,ClassSet.ClassName)  
  24.                     .LeftJoin(  
  25.                     UserSet.Select(UserSet.UserID))  
  26.                     .ON(ClassSet.ClassID.Equal(UserSet.UserID))  
  27.                     .Where(UserSet.UserID.BiggerThan(9));  
  28.  
  29.             }  
  30.             Console.WriteLine("---------------Union測試---------------------");  
  31.             using (var db=Db.CreateDefaultDb()) {  
  32.                 db.TransactionEnabled=true;  
  33.                 db.DebugEnabled=true;  
  34.                   
  35.                 var mql=ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(1))  
  36.                     .Union(ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(2)));   
  37.             }  
  38.         } 

3)使用DataSet

1.使用存儲過程

 
 
 
 
  1. DataSet dataset=db.ExecuteProToDataSet("存儲過程名",參數(shù)一,參數(shù)二); 

2.使用sql

 
 
 
 
  1. DataSet dataset=db.ExecuteSqlToDataSet(sql,"boy"); 

3.使用mql

 
 
 
 
  1. DataSet dataset=db.GetDataSet(ClassSet.SelectAll().Where(ClassSet.ClassID.BiggerThan(0))); 

4)使用xml配置sql查詢

1.配置config節(jié)點

 
 
 
 
  1.  
  2. //如果不是全路徑,則默認(rèn)在dll生成目錄  
  3.  

2.配置xml(sql.xml)

 
 
 
 
  1.  
  2.  
  3.  
  4. select name from user where id>@ 
  5. 查詢用戶名(描述信息) 
  6.  
  7.  

3.使用id進行查詢

 
 
 
 
  1. var list=db.GetDictionaryList(XmlHelper.GetSqlXmlByID("getname"),"boy"); 

5)sql之王者歸來

使用GetDynamicList ,讓你體驗另一種自由

 
 
 
 
  1. object,但在.net 4.0下面,您可以用dynamic直接取值.  
  2. string sql22="select * from Score";  
  3. dynamic list22=db.GetDynamicList(sql22,"Score");  
  4. foreach(var a in list22){  
  5. Console.WriteLine(a.ID+"--"+a.ScoreM+"--"+a.UserID+"--"+a.TypeName);//都是強類型  

以下是體驗強類型:)

原文鏈接:http://www.cnblogs.com/humble/p/3380065.html


本文題目:欣賞另一種Orm的設(shè)計風(fēng)格:大道至簡
轉(zhuǎn)載來于:http://www.5511xx.com/article/coghhpp.html