簡體   English   中英

Silverlight,WPF還是Windows Forms?

[英]Silverlight, WPF or Windows Forms?

我需要為Windows創建一個桌面應用程序,我對選擇哪種技術存有疑問。 事實是,應用程序必須與本地資源進行交互:

  • 與SQL通信(需要支持SQLite和MSSQL - 本地和遠程,並且希望使用NHibernate;甚至可以使用Castle的ActiveRecord)
  • 與通過藍牙,以太網,USB和串行(COM)端口連接的設備進行交互。 我需要從通過不同協議連接的傳感器讀取字節流。

我最好選擇Silverlight 4,並允許應用程序在完全信任的桌面上運行。 但我預見到有關這兩個要求的問題。 SL4有什么解決方案,如果沒有,我應該選擇哪種替代方案? 我不僅限於WPF或WinForms,但由於它應該在.NET上運行,我或多或少地限於這3個選項(或者我?)

使用Silverlight應用程序,如果不創建服務,您將無法連接到SQL源+您不會輕易(或根本沒有?)訪問本地資源(如COM端口)。 如果您的應用程序是基於Intranet的,我會選擇WPF並單擊一次部署。

在了解了如何使用WPF / Sliverlight控件,模板和數據綁定之后,您再也不想再觸摸WinForms了 - 不僅WPF / SL為您提供了更豐富的UI可能性,它們使得創建應用程序變得更容易且更不容易出錯(特別是數據綁定)。

看起來您需要相對較低級別的硬件訪問,即使可以使用SL,使用完整的.net也會更容易

所以,我會選擇WPF

只記得WPF / SL有一個學習曲線,如果你從來沒有建立一個WPF項目預算來學習該平台。

WPF將是您的首選武器。

API方面,WPF基本上是Silverlight的超集。 此外,您完全可以控制並完全訪問本地資源。

如果你使用的是.NET 4.0,你可能會喜歡Entity Framework,作為NHibernate的替代品。 並不是說它在任何方面都超過了NHibernate,但它整合得很漂亮,並附帶包裝。

但是,正如Nir所說,WPF還有一個學習曲線。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM