webservice类是否可以继承asp.net页面类

时间:2011-01-06 10:03:53

标签: asp.net web-services inheritance asmx multiple-inheritance

我有一个由两个asp.net项目组成的应用程序。我有一个继承System.Web.UI.Page的BasePage,并且我的所有页面都需要一些核心逻辑(在BasePage.cs中实现)。所以我的所有页面都继承了这个BasePage.cs。现在Web服务可以继承除了普通的Web服务类System.Web.Services.WebService

之外的同一个类

4 个答案:

答案 0 :(得分:2)

.NET框架不支持多重继承。即便如此,这种实施也很难被称为良好实践。

网页和网络服务页面调用的所有方法都应该放在额外的类中。

答案 1 :(得分:2)

网页和Web服务都可以使用的任何逻辑都应该在一个单独的类中,两者都可以使用。这种逻辑不能依赖于成为UI的一部分。

将它放入静态类中,让服务和页面都使用它。

答案 2 :(得分:0)

视图和服务应完全分开。服务不应该对页面有任何了解。如果可以,我会说你不应该。

答案 3 :(得分:0)

通常每个asp.net网页都继承“System.Web.UI.Page”。 但在你的情况下你有基类,该类继承“System.Web.UI.Page”然后你使用该基类为所有asp.net网页没有问题。 Web服务的基类是“System.Web.Services.WebService”,因此无论何时使用Web服务,都应该继承此Web服务的类。您不能将基类(BasePage.cs)用于您的Web服务。