KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
When browsing ASP.NET MVC source code in codeplex , I found it is common to have a class explicitly implementing interface. The explicitly implemented method/property then invoke another "protected virtual" method/property with same name. For example, public class MvcHandler : IHttpHandler, IRequiresSessionState { protected virtual bool IsReusable { get { return false; } } bool IHttpHandler.IsReusable { get { return IsReusable; } } } I'm now sure what's the benefit of this kind of programming. For me, I prefer to just implicitly implement the interface IHttpHandler. I guess the author just don't want MvcHandler has a public property IsResuable . The property IsReusable can only be used when instance of MvcHandler is treated as a IHttpHandler . Still, I'm not sure why the author what this way. Anybody know more benefits about this style of interface implementation?
Tags (comma-separated)
Save Edits
Cancel