Forcing Extension Methods to Be Used


tobj-067 I received the following question:

Is it possible to force a namespace to be included so that the extension methods in it will be used in it instead of the methods in the main class?

I have to admit, I had to go and do a little research on this, but once I did, I found out that the assumption behind the question is inaccurate.

Rule number one of extension methods is that if an instance method exists on a class, that method will take priority over any extension method that might otherwise be called.

So if you wanted to provide an extension method that converts a number to a string using the ToString() method by creating your own ToString() extension method that acts on an integer to format it some specific way, you will still get the default ToString() method when you call ToString().


Further, if you have two extension methods that could be called and one is in the current namespace and one is in another namespace, the one in the current namespace will be called first.

Finally, if you have two methods in two different namespaces, the normal rules regarding which method will get called come in to play.

So, to answer the original question, no, you can’t force a namespace to be used.  And even if you could, it wouldn’t solve your problem.

Other places talking about Extension Methods:

Ads by Lake Quincy Media

Other Related Items:

Officially Licensed by the NFL - San Francisco 49ers Dog Football Jersey - SmallOfficially Licensed by the NFL - San Francisco 49ers Dog Football Jersey - SmallGet your pet in the spirit with his/her NFL San Francisco 49ers Football Jersey. Decorated in the USA
Linear Programming: Foundations and Extensions (International Series in Operations Research & Management Science)Linear Programming: Foundations and Extensions (International Series in Operations Research & Management Science)

Linear Programming: Foundations and Extensions is an introduction to the field of optimization. The book emphasizes constrained optimization, begin... Read More >

Dog Sweater - Dublin Knit/Irish Knit Pet Sweater - Oatmeal -XX-Small - (XXS)Dog Sweater - Dublin Knit/Irish Knit Pet Sweater - Oatmeal -XX-Small - (XXS)Top-quality pet version of an extra-warm Irish classic!

Related Post

2 Responses to “Forcing Extension Methods to Be Used”

DotNetNuke Sponsor

 

Most Valuable Blogger
Sponsor