What is necessary to have an extension method honored when it exists in an imported assembly? I built one in a class library project but it is not recognized in my web proj
I had this problem using an extension method on enums in solutions referenced each other as shown below. Intellisense worked for the extension method in the ApplicationUI project and it even ran without compile or run-time errors. But the method simply didn't work. Also, the immediate window assured me that BusinessObjectLib.MyEnum did not contain a method with the name of my extension method, and no extension method could be found.
GenericLib - project where extension method on generic enums is defined
BusinessObjectLib - project where enums were defined, references GenericLib
ApplicationUI - project referencing both GenericLib and BusinessObjectLib
Even though, the Solution Explorer looked OK viewing all projects from ApplicationUI, when I opened the BusinessObjectLib project, I could see its reference to GenericLib was broken for some reason. (Like all of our code, VS probably has bugs as well?). First, I worked in the BusinessObjectLib project opened directly in VS, removing the ref, then removing the project, then restoring both in the opposite order. Then I renamed the ApplicationUI.sou file and forced it to be rebuilt. I was able to fix this problem through these actions, but only the .sou file rename seemed to do the trick. The immediate window still continues to give me the same error, but at least the run-time code works again. I am using this exact pattern in several other projects without having the kind of problem I'm having here.