一隻大菜鳥,最近要學習windows phone資料庫相關的知識,找到了一些比較簡短的教程進行學習,由於是英文的,順便給翻譯了。本身英語水平就不好,估計文中有不少錯誤,如果有不幸讀到的童鞋請保持對翻譯品質的質疑,多多指教。
這是原文地址:http://windowsphonegeek.com/tips/Windows-Phone-Mango-Local-Database-SQL-CE--Database-mapping
本文如下:
這是“windows phone mango本機資料庫(sqlce)”系列短片文章的第七篇。 為了讓你開始在Windows Phone Mango中使用資料庫,這一系列短片文章將覆蓋所有你需要知道的知識點。 我將談談在資料庫中映射類到表中,也就是說,在你的物件模型和資料庫模式之間映射。
1、Database mapping是什麼 為了建立一個本機資料庫,第一,你必須定義實體類。這些類定義了你的物件模型和它到資料庫模式上的映射。LINQ to SQL的對象關係能力取決於映射的詳細資料,以此來建立一個關聯式資料庫來映射到相應的DataContext。 對於每一個實體,通過使用LINQ to SQL的mapping來指定映射的詳細資料。這些特性指定了資料庫的特性例如表,列,主鍵和索引。可以查看http://msdn.microsoft.com/zh-cn/library/bb386971.aspx擷取更多的資訊。
參考:你可以看一看msdn文檔:http://msdn.microsoft.com/zh-cn/library/hh202860(v=vs.92).aspx 2、理解資料庫映射使用屬性對應類型到表、屬性到列:(1)在資料庫中為了映射實體類到表上,可認為實體類是[Table] attribute(2)[index]attribute可以用於(在類上)定義索引(3)在資料庫中為了映射實體屬性到列上,可以認為實體屬性是 [Column] attribute。
[Column( IsPrimaryKey = true )]
用於指定主鍵屬性。 使用[Association] attribute指定關聯,這允許你在資料庫映射中配置兩個表/實體之間的關係。 Association attribute有下面的重要屬性:
- OtherKey-屬性的名字對應關聯的另一端的對象的id
- ThisKey-屬性的名字對應類型上的主鍵
- Storage-屬性的支援變數
windows phone mango這個版本使用代碼優先方法來定義資料庫模式是首選的,即目前沒有視覺設計器可以協助開發人員在映射和配置他們的類來處理資料庫。或者至少它不是正式地支援。這意味著你必須:1、配置映射的屬性2、自己寫下所有的類3、如果資料庫不存在的話,要寫代碼建立它4、如果你想有升級舊資料庫版本到一個新的功能,你必須再一次編寫那些代碼 這篇文章我討論了在windows phone mango本機資料庫上映射類到資料庫的表。請繼續關注其餘的文章。