2013-04-15 54 views
1

尋找意見。我正在開發一箇中等規模的3層ASP.NET項目(.NET 2.0和Visual Studio 2005),其中包括Unix後端Oracle,一些強大的MS Web服務器和IE瀏覽器客戶端。性能非常糟糕,用戶感覺UI也顯得過時了。我們很快有機會重新設計並重寫整個應用程序,我想知道當前或推薦的MS平臺是什麼。網絡性能不符合鼻菸......新的「微軟之道」是什麼?

當MS在幾年前降級支持Silverlight以支持Windows 8和Windows Phone的「HTML5」時,我參與了WPF和Silverlight的不同合同。我並沒有試圖在Silverlight甚至WPF將會出現多長時間之間開始一場火焰戰爭,但是我從2013年4月開始尋找一些現代化的替代方案。我們無法避開的一個要求是我們可以在整個客戶機構的每臺用戶PC上安裝一些東西。

我自己的背景在WinForms和C#中比上面任何一個更多,但是無論我在哪裏開始,似乎在WinForms中開發任何新的LOB應用程序都沒有多大作用。

無論發生在Application Server平臺和應用程序運行通過遠程桌面?開發桌面應用程序並部署到應用程序服務器,並在每個用戶的桌面上放置一個快捷方式,甚至映射像我們以前回來的驅動器盤符,這仍然是有意義的嗎?

您的$ 0.02將不勝感激!

+1

您不能安裝,因爲它會太難/耗時或由於其他原因?如果是前者,那麼遠程部署有很多解決方案。特別是如果計算機在域中。 – Euphoric

+2

除了Euphoric的評論之外,我想提及Visual Studio中的Click-once部署功能。如果您沒有複雜的部署要求,這可能很有用。您可以進行設置,以便每次用戶啓動應用程序時,它都會自動檢查更新。每次你對代碼進行更新時,你只需要發佈到一個位置。 – failedprogramming

+0

無法安裝,因爲這太費時,而且我們的用戶羣在地理上是分開的。 我將檢查點擊一次自動部署。我們確實有幾個強大的Web服務器,可以重新用作應用服務器。 –

回答

1

如果你不能在最終用戶的電腦上安裝任何東西,那就去ASP.Net。其他任何事情都需要安裝。

您可以通過擁有一位優秀的設計師和大量的JavaScript來使Web應用程序更吸引用戶。與WPF的力量和美觀不可比,但這是你最好的選擇。

WPF是.Net框架的一部分,不會在未安裝的情況下運行。

Silverlight也可以是一個選項,但它仍然需要安裝(儘管最小,4 MB,少於2分鐘安裝),但無論如何安裝。

WinRT只能在Windows 8中運行。它在低版本(Vista,XP,7)中不受支持。所以我不認爲這是一個現在的選擇(當然,除非你所有的用戶都有Windows 8)。

並且不,winforms不是一個選項。它也是.Net框架的一部分,即使你可以安裝它,也沒有任何意義需要處理它的侷限性,你可以使用許多更好的技術。

+2

我想推薦ASP.NET MVC over WebForms,認真。 –

+0

@DavidTansey對。我主要是桌面開發人員,所以我沒有太多的經驗。 –

+0

@DavidTansey我會推薦任何與網絡相關的任何現代桌面技術。 (並且我不認爲WebForms是現代的)。 – Euphoric

4

我肯定會考慮把它作爲一個內部網站。

對於您需要的每個功能,UI將爲HTML5使用「單頁面應用程序」(SPA)。每個功能都會在用戶需要時加載的頁面上。瀏覽器中的javascript/ajax代碼將與反饋需要顯示的原始數據的Web服務器進行交互。

使用Active Directory,您可以爲每個人提供完全的安全性和自定義。

如果您需要大量的交互性,那麼您還應該考慮在混合中包含SignalR。 (這是「新」MS工具之一!)

+0

我想補充一點,如果客戶端沒有HTML 5支持的瀏覽器,您可能需要使用shiv(或類似的)在舊版瀏覽器中優雅地降級 –

+2

根據其他評論,截至2013年4月,您希望成爲在.NET 4.5上使用ASP.NET MVC4 Razor和C#使用Visual Studio 2012.在客戶端上,JQuery和其他庫(例如Twitter BootStrap和KnockoutJS)是非常寶貴的。 –

+0

我認爲這是我一直在尋找的工具和技術列表。 –