成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

LINQ to SQL數(shù)據(jù)表介紹

開(kāi)發(fā) 后端
這里介紹在LINQ to SQL數(shù)據(jù)表里面都是用的DbConnection,而不是SQLConnection,這樣的話理論上可以支持所有的數(shù)據(jù),但對(duì)于一些數(shù)據(jù)庫(kù)的支持可能不是太好。

LINQ有很多值得學(xué)習(xí)的地方,這里我們主要介紹LINQ to SQL數(shù)據(jù)表,包括介紹LINQ to ACCESS的使用等方面。

在LINQ to SQL數(shù)據(jù)表里面都是用的DbConnection,而不是SQLConnection,這樣的話理論上可以支持所有的數(shù)據(jù),但對(duì)于一些數(shù)據(jù)庫(kù)的支持可能不是太好。例如分頁(yè),SQL Server 2000,SQL Server 2005,SQL Server 2008數(shù)據(jù),使用LINQ的代碼都不一樣,而ACCESS和SQL Server 2000比較接近,就可以直接使用SQL Server 2000Provider。查了一些資料看到,理論有那個(gè)數(shù)據(jù)庫(kù)provider,就可以支持這種數(shù)據(jù)庫(kù)。也看了dbLINQ 0.8支持不同數(shù)據(jù)庫(kù)的源碼,但自己能力有限不能寫(xiě)一個(gè)ACCESS的,還是用官方的吧。下邊說(shuō)一下方法。

其實(shí)他不太麻煩,只是改一下,*.designer.cs文件里的代碼。因?yàn)锳CCESS 不支持dbo,而LINQ to SQL數(shù)據(jù)表前面都有dbo.的前綴, [Table(Name="dbo.wjk3")],將dbo.去掉,不然的話,會(huì)提示你找不到dbo數(shù)據(jù)庫(kù),這點(diǎn)上,自己走了不少?gòu)澛贰T趐ublic partial class DDataContext: System.Data.LINQ.DataContext上邊加上, [Provider(typeof(System.Data.LINQ.SQLClient.SQL Server 2000Provider))]設(shè)定為SQL Server 2000Provider,不然的話 LINQ 里面的first 不能使用,另外分頁(yè)也不能使用,因?yàn)樗J(rèn)的是SQL Server 2008Provider。

這一點(diǎn)很重要,到現(xiàn)在為止,基本上解決LINQ to ACCESS的使用,但還有一點(diǎn)問(wèn)題,從數(shù)據(jù)庫(kù)讀取一條記錄,修改后使用SubmitChanges()更新,提示錯(cuò)誤,不能修改,錯(cuò)誤內(nèi)容:找不到行或行已更改。這一點(diǎn)可以使用一些自定義方法來(lái)實(shí)現(xiàn)更新,使用ExecuteCommand()直接執(zhí)行更新SQL語(yǔ)句來(lái)實(shí)現(xiàn)。感覺(jué)LINQ to SQL數(shù)據(jù)表的跟蹤,如果不適用SubmitChanges()更新的話,跟蹤也每太大的意義,實(shí)現(xiàn)跟蹤可能會(huì)降低系能,另外添加,刪除也依賴跟蹤,如果不使用跟蹤的話,還要擴(kuò)展添加,刪除的方法。

  1. public partial class dbgame  
  2. {  
  3. public IQueryable<TEntity> Find<TEntity>(TEntity obj) where TEntity : class  
  4. {  
  5. //獲得所有property的信息  
  6. PropertyInfo[] properties = obj.GetType().
    GetProperties(BindingFlags.Public | BindingFlags.Instance);  
  7. //構(gòu)造初始的query  
  8. IQueryable<TEntity> query = this.GetTable<TEntity>().AsQueryable<TEntity> ();  
  9. //遍歷每個(gè)property  
  10. foreach (PropertyInfo p in properties)  
  11. {  
  12. if (p != null)  
  13. {  
  14. Type t = p.PropertyType;  
  15. //加入object,Binary,和XDocument,支持sql_variant,imager 和xml等的影射。  
  16. if (t.IsValueType || t == typeof(string) || t == typeof(System.Byte[])  
  17. || t == typeof(object) || t == typeof(System.Xml.Linq.XDocument)  
  18. || t == typeof(System.Data.Linq.Binary))  
  19. {  
  20. //如果不為null才算做條件  
  21. if (p.GetValue(obj, null) != null)  
  22. {  
  23. if (((ColumnAttribute)(p.GetCustomAttributes(typeof(ColumnAttribute), 
    true)[0])).IsPrimaryKey && Convert.ToInt32(p.GetValue(obj, null)) == 0)  
  24. {  

【編輯推薦】

  1. Linq To SQL輸出SQL語(yǔ)句剖析
  2. LINQ查詢的目的與實(shí)現(xiàn)手段
  3. LINQ from子句進(jìn)行復(fù)合查詢實(shí)現(xiàn)方法
  4. LINQ查詢表達(dá)式功能詳解
  5. LINQ基礎(chǔ)概念總結(jié)
責(zé)任編輯:佚名 來(lái)源: 51CTO.com
相關(guān)推薦

2009-09-09 11:24:13

Linq使用數(shù)據(jù)表

2009-09-08 13:07:15

介紹Linq to S

2009-09-11 09:41:19

LINQ to SQL

2009-09-15 17:07:24

Linq To SQL

2010-07-16 09:06:51

SQL Server數(shù)

2010-07-22 10:30:36

SQL Server數(shù)

2009-09-18 14:07:51

LINQ to SQL

2009-09-18 15:19:19

LINQ to SQL

2009-09-08 10:50:20

2009-09-16 10:38:43

LINQ查詢

2009-09-10 17:30:15

LINQ Where子

2009-08-13 11:01:32

LINQPadLINQ工具

2009-09-09 14:20:49

LINQ To Luc

2009-09-18 09:25:06

LINQ Framew

2010-06-18 11:04:39

SQL Server

2010-11-22 13:53:46

MySQL數(shù)據(jù)表

2009-09-14 19:20:22

LINQ TO SQL

2010-08-04 09:55:34

LINQ to SQL

2009-09-15 10:02:44

Linq to SQL

2009-09-18 14:25:36

LINQ to SQL
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 成人在线视频免费观看 | 国产在线视频一区二区 | 午夜大片 | 97国产爽爽爽久久久 | 国产精品久久久久久久毛片 | 黄色男女网站 | 欧美乱码精品一区二区三区 | 91麻豆精品国产91久久久久久久久 | 久久久久久高潮国产精品视 | 狠狠色狠狠色综合日日92 | 国产精品中文在线 | 成人av免费网站 | 国产精品夜夜春夜夜爽久久电影 | 国产成人在线播放 | h视频在线观看免费 | 成人高清在线 | 久久久久国产精品 | 国产精品一区二区三区久久 | 日日干天天干 | 一区二区av | 亚洲精品一区二区在线观看 | 特黄特黄a级毛片免费专区 av网站免费在线观看 | 国产精品一区在线 | 国产精品爱久久久久久久 | 亚洲精品电影网在线观看 | 日本天堂一区二区 | 精品国产高清一区二区三区 | 韩国av网站在线观看 | 中文字幕一区二区三区四区五区 | 欧美在线色 | 毛片免费观看视频 | 国产一区二区三区久久久久久久久 | 天天草草草| 黑人精品欧美一区二区蜜桃 | 久久中文字幕一区 | 免费一级做a爰片久久毛片潮喷 | 亚洲欧美一区二区三区视频 | 欧美一级精品片在线看 | 亚洲视频免费观看 | 日韩欧美成人一区二区三区 | 免费精品|