2013-06-27 76 views
0

我目前正在開發一個MVC項目。它依賴於需要運行的服務,並按設定的時間間隔執行任務。這個WCF服務項目是一個單獨的項目,我已經將它集成到我的MVC項目中。從WCF服務方法調用mvc控制器中的操作方法

事情對我來說很好,直到這裏,但問題出現在WCF服務應用程序,現在我需要調用我的MVC項目控制器類的操作方法。我嘗試的一種方法是添加對我的MVC項目的引用,然後嘗試訪問操作方法,但它給了我錯誤,如下所示:

類型'System.Web.Mvc.Controller'在未引用的程序集。您必須添加對程序集「System.Web.Mvc,Version = 3.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35」的引用。

我想知道我的方法是否適合我,如果是,如何擺脫這個錯誤。

如果不是,我該怎麼做才能解決我的問題。

回答

1

你必須將它們看作是獨立的網站,wcf服務不會僅僅實例化一個控制器並運行它,更多的是它會創建一個webrequest並對它進行獲取或發佈。

您可以利用System.Net.WebClient類來做到這一點。

您需要做的就是決定是否要發佈或從mvc網站獲取一些數據,然後使用webclient類中的某個方法來完成它。

http://msdn.microsoft.com/en-us/library/system.net.webclient(v=vs.100).aspx

這將詳細介紹WebClient類以及如何使用它。您可能需要wcf服務上的appsetting條目來指向您想要調用的mvc網站,根本不應該很複雜