2013-12-10 26 views
0

我需要做的是滿足我的競爭對手,並'更新'我的winforms應用程序,以便通過在線服務完全訪問。最終用戶最有效的界面:Winforms/WCF與網頁瀏覽器訪問

我不確定是否重新編碼我的winforms應用程序,以便它使用WCF/Odata訪問數據庫,或者整個應用程序是否需要重寫爲webforms應用程序並將數據庫移動到託管網站。根據我的編碼經驗,後面的選項可能會是兩個選項中更困難的選項。目前,數據庫駐留在最終用戶PC上,winforms應用程序提供100%的最終用戶訪問權限。還有一個Web界面,可以讓最終用戶的客戶訪問預訂,他們自己的用戶詳細信息等。Web界面自行託管在最終用戶PC上。

關於向最終用戶提供數據,我的提議的winforms應用程序檢索和消費遠程託管數據庫的數據與完全託管的webforms /數據庫應用程序之間是否存在明顯的時間差?在我冒險之前,這種差異能夠量化嗎?

+1

這個答案很可能會被封閉,因爲它會引來太多的意見。我的觀點是,如果速度是一個問題,你應該建立一些小測試,看看你的架構會有什麼不同。否則這對於這種格式來說都是相當廣泛的話題。 – paqogomez

+0

@papogomez我認爲這將是唯一的解決方案,但我認爲這是一個簡單的問題,會吸引x票的webforms和y票的winforms,但唉,我猜你是對的。 – David

回答

1

Web與桌面是一個巨大的話題。

我的兩分錢:

網站:

1 - 優點:

從各種設備(PC,蘋果機,智能手機,平板電腦)的
  • 入店。
  • 無需安裝。
  • 只需要服務器部署/更新。

2 - 缺點:

  • 無國籍(這意味着不存在客戶端緩存,例如)在所述客戶端計算機的功能(文件系統等)
  • 減控制。
  • 瀏覽器地獄(UI外觀/行爲上的每個瀏覽器不同),由於糟糕的JavaScript無處不
  • 基於Web的漏洞(如跨站腳本等)

  • 更難代碼Windows桌面:

    1 - 優點:

    • 有狀態(你可以在客戶端緩存大量數據)。
    • 更多控制客戶端計算機的功能。
    • 在每臺機器上看起來都一樣。
    • 由於有狀態的性質並且沒有javascript(hooray),所以更容易編碼。

    2 - 缺點:

    • 僅適用於Windows操作系統。沒有智能手機,沒有Mac,沒有平板電腦。
    • 需要客戶端安裝(可能包括.Net Framework安裝)。
    • 需要服務器+客戶端更新(使用ClickOnce更容易)。

    這就是說,winforms是一個真正的老技術,沒有人在意,不支持任何東西。使用某些CSS可以使Web應用程序看起來更美觀。無論你多麼努力地改善它,winforms看起來都很醜陋。

    如果你走Windows Desktop路線,你寧願將你的應用程序升級到WPF。

  • +0

    謝謝您的意見,我很欣賞並理解您的意見,但您尚未回答或僅就我需要知道的唯一事實提出意見。那就是(簡而言之) - 在刷新從數據庫獲得的數據的屏幕刷新時間方面更快? – David

    +0

    @大衛這個答案是非常主觀的,以至於在給出這樣的概括時它不可能被回答。 HighCore,熱愛你的工作+1 – paqogomez

    +0

    @大衛本質上「更快」。你必須讓它更快,例如在Web中,你會使用AJAX和類似的東西來刷新屏幕,而不會強制回發等。並且在Desktop + WCF中,您可以使用GZIP壓縮來縮小傳輸的數據,並在客戶端中本地緩存以防止必須始終前往服務器。 –

    相關問題