2013-05-31 13 views
0

請在Visual Studio 2012上下文中閱讀以下內容:如何在Visual Studio中使用我的網站使用控制檯應用程序?

我有兩個項目 - 一個是網站(文件 - >新建網站),另一個是控制檯應用程序(文件 - >新建項目 - > Windows - >控制檯應用程序)。我是前者的作者。

獨立應用程序通過硬編碼來欺騙輸入,運行某些代碼並創建輸出。它使用我已安裝在我的機器上的軟件的本地安裝來生成此輸出的dll。

我在MSDN上讀到我無法以有用的方式將控制檯應用程序添加到網站解決方案中。所以,如果我編譯控制檯應用程序輸出一個DLL而不是一個exe文件,我可以在我的網站中引用該dll嗎?我怎樣才能做到這一點?我需要將輸入值從網站傳遞到dll,並從dll返回有意義的結果。這可能嗎?

回答

1

是的,你描述了一個解決這個問題的可行方法。您需要創建一個類庫項目,將控制檯應用程序的源代碼添加到該項目中,除了具有static Main方法的類以及修改(添加到)源代碼,以便可以從代碼實例化的類在將類庫程序集添加到Web應用程序中作爲參考之後,在您的Web應用程序中。這個類將有一個適當的參數的方法,你會打電話。所有這些都假設控制檯應用程序代碼執行的任務很快,並且不會在Web應用程序響應中產生明顯的延遲。如果任務需要很長時間,您將不得不在後臺線程中運行它,或者將其移到Web應用程序之外 - 後者涉及的內容更多。

+0

我改變了現有的控制檯應用程序屬性來構建「類庫」。控制檯應用程序任務至少需要25秒。我可以在網頁上顯示一個微調,對不對?我不明白爲什麼我需要將它移動到後臺線程。 – Freakishly

+0

您的Web應用程序的用戶有多難耐?通常,人們不願意等待頁面重新加載半分鐘。 – Igor

+0

我有一個類似的控制檯應用程序和Web表單已經設計好。轉換.exe爲.dll是否適合你?我想知道是否有可能得到一個很好的解釋,如何使用Microsoft Azure將我的Web表單的輸入和輸出傳遞給.dll。 – justinpees

相關問題