1

我最近開始致力於開發windows phone開發。我遇到過如何從此鏈接本地維護關係數據庫:LINQ TO SQL適用於Windows Phone 8的本地數據庫

程序對.sdf文件執行操作。

我的問題是LINQ TO SQL ORM默認使用SQL Server CE數據庫嗎?

如果不是那麼默認使用哪個數據庫?

並且是用作包含數據庫文件的容器的隔離存儲器?

+0

是的,是的。 (您也可以將其存儲在安裝文件夾中,但數據庫是隻讀的) – ErikEJ 2015-02-23 10:15:35

+0

@ErikEJ .sdf文件是SQL CE數據庫文件嗎? – hcnimkar 2015-02-23 10:19:47

+0

是的 - 在這裏學習的一些鏈接:http://erikej.blogspot.dk/2011/07/windows-phone-sql-server-compact.html – ErikEJ 2015-02-23 10:40:47

回答

1

SQL Server CE使用它自己的方法將數據庫存儲在獨立存儲中。

如果要使用linq的SQL Server CE,則需要將模型類定義爲System.Data.Linq.Table對象,該對象將放置在類型爲System.Data.Linq.DataContext的類中。

DataContext上調用SubmitChanges會將上下文實例中的所有更改作爲SQL Server CE數據庫自動推送到獨立存儲後端。

public class MyDataContext : DataContext 
{ 
    private static MappingSource mappingSource = new AttributeMappingSource(); 

    public Table<Person> People; 
    public Table<Item> Items; 

    // pass the connection string to the base class. 
    public MyDataContext() : base("DataSource=isostore:/data.sdf", mappingSource) 
    { 
    } 

    ~MyDataContext() 
    { 
     Dispose(false); 
    } 
} 

MyDataContext db = new MyDataContext(); 

// do stuff here 

db.SubmitChanges(); 
+0

我做了同樣的事情。謝謝@瑞恩 – hcnimkar 2015-02-25 06:21:00

相關問題