2013-07-30 90 views

回答

4

由於Metro-Apps-Sandbox概念,您無法直接連接到SQL Server。他們只能通過服務與服務器通信。解決此限制的唯一方法是我知道將SQLite集成到Windows 8應用程序中。

在我看來,最好的方法(如果你使用Visual Studio)是EntityFramework。這看起來有點複雜,但開發過程中確實有幫助(通過智能更少的錯誤,更多的注射安全性)。然後將其包裝到WCF Data Service中,並且準備好在應用程序中使用任何SQL數據庫。

實體框架使開發人員能夠在特定領域的對象和屬性,如客戶和客戶地址的表單數據的工作,而不必與底層數據庫表和列過問這個數據被存儲在哪裏。實體框架,開發人員可以在抽象的,當他們處理數據的更高水平的工作,並可以用更少的代碼比傳統應用

您可以兩種方式之間決定創建和維護面向數據的應用:

  1. 型號第一 - 設計你的數據庫的Visual Studio或SQL Server Management Studio中內
  2. 代碼第一 - 設計您的數據庫基於類

Howev呃有一些缺點:

  • 如果您使用Windows Azure,由於Azure數據庫的某些限制,您不能直接使用n:m關係。
  • 您需要爲Windwos 8開發調用異步數據庫。因此,舊客戶端使用EF和Windows 8中的新用戶之間總會有一些混淆。

Here是EF-Project的頁面。你應該從那裏開始潛入。

+0

感謝您的回覆......。是否有可能將WCF服務放置在手機/平板電腦應用程序本身上,還是將它放在服務器上? – TheIdiot

+1

必須在服務器上,不允許環回連接 - 如果您打算在Windows應用商店發佈應用 –

+0

但是可以讓Windows 8客戶端像服務器一樣工作。您可以構建一個WPF應用程序作爲您的服務主機,並將Windows 8客戶端連接到本地主機WPF應用程序。 –

相關問題