For sake of simplicity, let\'s assume I want to write an extension method for the type int? and int:
public static class IntExtentions
{
public static in
No you cannot. This can be verified experimentally by compiling the following code
public static class Example {
public static int Test(this int? source) {
return 42;
}
public void Main() {
int v1 = 42;
v1.Test(); // Does not compile
}
}
You will need to write an extension method for each type (nullable and not nullable) if you want it used on both types.