ASP.NET Error BC30456 = ‘Insert Method’ is not a member ‘Your Class’

Posted by Blake on 3/23/2012

So, I received an error that went something like this:

    YourPage.aspx.vb(123): error BC30456: 'ValidateDate' is not a member of 'YourPage'.

I looked in Visual Studio and the Intellisense found ValidateDate on the base class. When I told it to find the definition, it took me to the base class in the App_Code directory and sure enough, the method did exist. I scratched my head, then I decided to tell the server to recompile the site.

Once the site recompiled, all was well. I believe, what had happened was a result of a lazy copy. Instead of taking the site temporarly offline and then copying the new content so it recompiles in it’s entirety, individual code files were moved out one at a time. The first few compiled, but the last few were compiled with the old copy (and those didn’t trigger a recompile because of the one already occurring).

This would probably only be an issue/fix if you’re using ASP.NET, copying to the App_Code directory in a non-pre-compiled site and you’re don’t take the site offline first. :) Perfect storm of variables I suppose. Anyway, hope it helps someone.