0

我正在開發window phone 7應用程序。我是Window Phone 7應用程序開發的新手。我想在我的應用程序中使用SQL Server精簡版數據庫進行數據庫連接。因此,在我的應用程序中,我通過右鍵單擊「數據連接」創建了數據庫。&在服務器資源管理器中選擇「添加連接」。之後,我通過使用打開的窗口中的創建按鈕創建了數據庫。然後我測試了我的連接。它成功了。我已經在我的應用程序中添加了創建的數據庫文件,方法是右鍵單擊項目名稱&,選擇添加現有項目。數據庫文件是作爲'ExpenseManagerDB.sdf'添加的,我使用服務器資源管理器爲此數據庫創建了表。現在我想以編程方式爲我的應用程序執行數據庫連接。所以我用下面的代碼如何在Window Phone 7應用程序中使用SqlCeConnection類?

namespace ExpenseMgrMobAppl.Category 
{ 
    public partial class Category : PhoneApplicationPage 
    { 
     private void Submitbutton_Click(object sender, RoutedEventArgs e) 
     { 
      string conSTR = "Data Source=" + (System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)) + "\\ExpenseManagerDB.sdf;Persist Security Info=False"; 
      SqlCeConnection connection = new SqlCeConnection(conSTR); 
      SqlCeCommand cmd = new SqlCeCommand("select category_name form category where category_id=1", connection); 
      connection.Open(); 
      textBlock1.Text = cmd.ExecuteScalar.ToString(); 
      connection.Close(); 
     } 
    } 
} 

但我沒有找到用於SqlCeConnection類的任何命名空間/裝配。我也嘗試在我的應用程序中添加對dll「System.Data.SqlServerCE.dll」的引用。但不能添加引用。我需要爲數據庫連接做些什麼?我需要做什麼來在我的應用程序中使用SqlCeConnection類?我正在尋找可以在我的應用程序中使用SqlCeConnection類的東西?你能否提供任何解決方案或鏈接,我可以解決上述問題?如果我在上述情況下做錯了任何事情,請指導我。

回答

4

SQL CE在此版本的工具中不可用。

備選方案存儲在Web服務後面,第三方數據庫源如Sterling或本地存儲在使用XML和LINQ的文件中。

+0

如果將第三方數據庫軟件包添加到應用程序的代碼庫中,請考慮您的內存佔用情況。這可能沒有必要的開銷,取決於你在做什麼。 – 2010-12-04 00:50:53

1

正如Mick N所說,手機中有一些第三方數據庫可用。看看

但是我的建議是真的好好想想你是否需要在手機上的應用程序中使用完整的關係數據庫。如果你只是用它來存儲和檢索數據,二進制序列化文件是非常有效和輕量級的。

記住手機是一個非常資源受限的環境。而在桌面上,我們會立即轉向數據庫以滿足大多數數據存儲需求,因爲它使我們的生活變得更加輕鬆。在手機上,我們需要更加小心並優化環境 - 即使這會讓我們的程序員變得更加艱難。在考慮存儲數據時,完整的數據庫不一定是首選。

這就是說,如果你有一個數據要求,你覺得一個完整的關係數據庫,那麼你應該絕對使用上述數據庫之一。

相關問題