2009-01-05 72 views

回答

15

我真的不會推薦使用工具來完成轉換。 Web應用程序和WinForms有着根本性的不同,應該是設計的方式不同。即使在這些日子裏有大量的Ajax踢,你仍然需要記住整個無狀態的HTTP模型。

如果你不想重新考慮應用程序,你可能要考慮將其轉換成的Silverlight 2.0,而不是...

+1

不能同意更多...嘗試平面翻譯真的不是一個好主意。 – 2009-01-05 10:53:47

+1

+1不使用工具。如果Win應用程序使用MVC模式,則模型和控制器可以在兩者之間共享。 – etsuba 2009-01-06 14:58:20

0

你可以考慮託管通過遠程桌面或Citrix

5
您的Windows窗體應用程序

@Jon Skeet有最好的建議。也就是說,讓我們來看看您提供的Google鏈接的結果。會發生什麼?

大多數關於主題(用於查詢)的結果都是其他程序員詢問基本相同的問題 - 並獲得基本相同的答案。事實上,我只看到一個工具:CodeProject的樣本。在這個工具,不僅是貧瘠和醜陋生成的用戶界面,但有以下大免責聲明:

請注意,這不是 意圖本文或 伴隨代碼示例實現 Windows 窗體和Web窗體之間的完整轉換,包括所有的 事件和業務邏輯。由於 兩個編程模型的本質不同,這將是一個毫無結果的嘗試。相反,我們是 針對用戶界面 組件本身,映射窗口 窗體控件到相應的Web 表單對應。

其中真正的摩擦:它所做的就是根據您現有的用戶界面生成一個(非常基本的)用戶界面。所有的代碼,邏輯,流程甚至導航都取決於你。

底線:沒有一個工具可以彈出正面和中心是因爲這樣的工具幾乎不可能寫入,並且會導致(很有可能)無法導航的非功能性網站。雖然WinForms和WebForms在編程上看起來很相似,但實際上它們完全不同。沒有任何工具可以從WinForms應用程序中爲您生成整個網站 - 模型與它們可能出現的不一樣。

在一天結束時,採用WinForms應用程序並啓用Web的最佳方式是編寫所述應用程序,使所有業務邏輯封裝在其自己的DLL(或其集合)中,然後使用這些DLL驅動新的從頭開始的站點的後端。這樣你所開發的只是前端和顯示支持。

1

也許你想試試VisualWebGui? 通過一些調整,您可能可以在瀏覽器窗口中運行Windows Forms應用程序。

相關問題