2011-04-13 78 views
0

我決定學習Silverlight,但除了知道如何編寫應用程序之外,我還需要知道如何連接到遠程服務器以獲取數據。我已經看到了.NET中的一些數據庫連接的例子,但是我很困惑,應該走哪條路。如何連接到Silverlight應用程序中的遠程SQL數據庫?

我的一般問題是SL應用程序如何連接到遠程服務器?如果您願意,您可以發佈主觀響應,但是這個問題應該是客觀的,因爲我想了解創建到遠程SQL服務器的連接的可能方式。

這些(WCF,XML,Ajax,Linq to SQL,實體框架,數據訪問提供程序等)在哪裏派上用場?如果有人想建立健全和安全的連接,那些(或其他)哪一個是必須學習的?我想抓一本書和學習東西,但在此之前,我需要知道我需要投入什麼。

回答

1

作爲瀏覽器技術的Silverlight不直接連接SQL Server。大多數SL應用程序都會向服務器說明HTTP(REST,SOAP,POX) - 其他選項可用,但比「大」.NET Framework更受限制。

可能最適合初學者的最簡單方法是.NET RIA Services。它允許簡單暴露由數據庫構建的各種模型(LINQ to SQL,實體框架等)。如果你正在與SQL Server交談,LINQ to SQL在模型方面是最簡單的,儘管EF也很好(一個更大,更復雜的錘子)。 RIA Services允許您通過Web服務從模型中公開表格對象,並且Silverlight客戶端可以通過LINQ查詢消費數據,這些查詢被遠程返回到服務器(非常高效 - 查詢條件位於客戶端上,而數據過濾它發生在服務器上,並且所有的編譯時類型都是針對模型進行檢查的,所以很難對數據類型進行篡改並查詢或暴露給SQL注入攻擊)。 RIA Services還將允許您在兩端應用各種安全選項和數據驗證,並且如果您進入較低級別並執行RIA無法做到的事情,則可以使用WCF的全部功能。

相關問題