我只是偶然IController
发现它有一个方法Execute
。我的问题是,鉴于Controller
从ControllerBase
哪个实现接口派生,它IController
是如何ControllerBase
实现Execute
的protected virtual
?
我的理解是接口必须作为公共方法来实现。我对此的理解更加复杂,因为您不能调用Execute
实例化Controller
,而必须将其强制转换为IController
.
如何将接口实现为受保护的方法?
再补充一点,我知道显式接口实现,但是如果您查看at的源代码ControllerBase
,您会看到该方法实现为protected virtual void Execute(RequestContext requestContext)