实现接口的泛型基类
本文关键字:基类 泛型 接口 实现 | 更新日期: 2023-09-27 18:33:07
如何在 asp.net 网络表单项目中声明我的 Basepage 类以实现 IBasePage?
public abstract class BasePage<T> : Page where T : class
{
}
和界面
public interface IBasePage
{
UserProfile UserProfile { get;}
bool IsStreamingAdmin {get;}
int? EmplId {get;}
}
我的最终目标是能够编写这样的代码:
IBasePage page = HttpContext.Current.Handler as IBasePage;
if (page.IsStreamingAdmin)
{
//do something here....
}
你的问题对我来说并不完全清楚,但你不能这样做:
public abstract class BasePage<T> : Page, IBasePage where T : class { }
public abstract class BasePage<T> : Page, IBasePage where T : class { }
如果您的类实现了代码能够编译的interface
中定义的所有方法,您将能够调用抽象类的instance
。
调用 page.IsStreamingAdmin
将导致返回您具有实例的类的值。