2010-11-10 61 views
0

我們正在實施一些通過asp.net web服務公開的業務功能。通過桌面應用程序重用網站功能

在當前階段用戶界面對於它的一些和平是必需的,我們將在現有的桌面應用程序(它是MFC C++應用程序,但我們正在考慮集成一些WinForms/Wpf組件)內部實現它。

在最近的將來,我們計劃用網站版本(它將是asp.net網站或可能的Silverlight應用程序)替換當前的桌面應用程序。因此,我想在網站上實現一次UI,並以某種方式從桌面應用程序中重新使用它。

我清楚了嗎?

有沒有辦法做到這一點?

當然,我可以實現Web服務並立即在桌面應用程序中使用它,並在需要時從Web應用程序中重新使用它......但我希望有更好的方法來實現這一點。

歡迎任何想法!

P.S.一個選項可以是由我們的桌面應用程序顯示的asp.net網頁。桌面應用程序將僅用作瀏覽器(不添加任何附加功能)。

+0

「桌面應用只能作爲瀏覽器(不添加任何附加功能)。」你的意思是像我現在使用的免費,經過充分測試的瀏覽器? – 2010-11-10 23:15:05

回答

0

我的想法應該完全適用於簡單的HTML UI實現,它將通過CHtmlView控件從桌面應用程序「瀏覽」。

說實話,我沒有試圖實現(任務推遲了一段時間)。

1

那麼......你基本上已經有了你的答案。如果您可能要使用Silverlight,如果當前的桌面應用程序是使用WPF和XAML構建的,那麼您會很快地進行轉換。否則,你將不得不像所有其他網站一樣構建一切 - div和CSS一直爲站點,而設計師resx爲桌面。

+0

Silverlight仍然是可選的。你能否澄清你的意思是「桌面設計師resx的」?請注意,目前的第一個目標是(以任何方式)使桌面版本可行。 – Budda 2010-11-10 23:13:43

+0

我的意思是你要麼在XAML中設計網頁和桌面,要麼使用Silverlight/WPF,要麼使用ASP.Net和Windows Forms。如果你所要做的只是讓系統的Windows窗體部分充當Web應用程序的瀏覽器,那麼我就不用擔心了。正如另一位評論者指出的那樣,目前已經有幾個高質量的瀏覽器。我建議不要創建一個桌面應用程序來充當瀏覽器,它很笨重,很難看,任何IT專業人員都會看到它。只有蘋果真的在做「桌面應用中的網絡應用」。 – 2010-11-11 08:03:01

1

除非客戶付錢給您編寫和維護應用程序的多餘版本,否則請勿這樣做。只需編寫新的Web應用程序,包裝它們,並稱它爲好。

如果你可以這樣做,我建議你簡單地跳過集成步驟。無論如何,如果你最終拋棄代碼,那麼整體成本就會降低。

使用任何你想要的技術。如果你不使用客戶端框架來實現它,你就不會被綁定到任何特定的平臺。另一方面,如果您使用現有的客戶端框架(如Silverlight),並使用良好的代碼設計實踐(如MVVM),則單元測試可能更容易。

+0

「應用程序快捷方式」將無法從當前對話框「返回」到另一個...但是,感謝您提供一個想法。 – Budda 2010-11-10 23:17:42

+0

@Budda:我重讀了你的問題,並且發現「Make Application Shortcut」選項不起作用,因爲你正在將一個Web UI片段集成到現有的應用程序中。儘管已經編輯過它來考慮這一點 – 2010-11-10 23:19:25