Home > Enterprise >  Inheritance in MVC5
Inheritance in MVC5

Time:12-13

I'm using MVC5, and have gotten CaptchaMvc nuget package.
I want to use function IsCaptchaValid from this package in my controller.
This is the signature of the function

public static bool IsCaptchaValid(this ControllerBase controllerBase, string errorText, params ParameterModel[] parameters);

From here, when I go to definition of ControllerBase, I get to see that this class is part of System.Web.Mvc, v5.2.3.0.

When I go to my controller, I see that it inherits from BaseController (my class), and that this class inherits from AsyncController class, that is abstract, and also part of System.Web.Mvc namespace. When I go to definition of this class I see that it inherits from System.Web.Mvc.Controller, and that this class inherits from System.Web.Mvc.ControllerBase.

My question is, how is it that I cannot use function IsCaptchaValid in my controller?
Is it because of the abstract AsyncController, and if so, why should abstract class hide funcitons?
Is there a way that would allow me to use this function without making my controller inheritance hierarchy?

UPDATE 1:
As Richard Deeming mentioned
enter image description here I am using CaptchaMvc namespace needed for this function to work, but VS doesn't seem to recognize that I installed it, even though I can clearly see that I did in Nuget Package Manager for this project.

CodePudding user response:

For some reason, I just needed to restart Visual Studio...

  • Related