2011-01-06 90 views
0

我有一個由兩個asp.net項目組成的應用程序。並且我有一個BasePage繼承System.Web.UI.Page,並且在我的所有頁面中都需要一些核心邏輯(在BasePage.cs中實現)。所以我所有的頁面都繼承了這個BasePage.cs。現在Web服務可以繼承與普通Web服務類相同的類System.Web.Services.WebServiceWeb服務類是否可以繼承asp.net頁面類

回答

2

.NET框架不支持多繼承。即使是這樣,這種實施方式也不會被稱爲良好實踐。

網頁調用的所有方法以及web服務頁面都應該放入額外的類中。

0

視圖和服務應該完全分開。服務不應該知道頁面的任何內容。如果可以,我會說你不應該。

0

通常每個asp.net網頁都會繼承「System.Web.UI.Page」。 但在你的情況下,你有基類,該類繼承「System.Web.UI.Page」,那麼你使用該基類的所有asp.net網頁沒有問題。 Web服務的基類是「System.Web.Services.WebService」,所以無論何時使用Web服務,都應該繼承此Web服務的類。您不能將您的基類(BasePage.cs)用於您的Web服務。

2

Web頁面和Web服務都可以使用的任何邏輯都應該位於一個可供兩者使用的獨立類中。這種邏輯不能依賴於用戶界面的一部分。

把它放到一個靜態類中,並使服務和頁面都使用它。