My class ClassName
has an operator defined:
public static explicit operator ClassName(Guid value)
{
return new ClassName(value);
}
This allows to "cast" this way:
var guids = new[] { Guid.NewGuid, Guid.NewGuid() };
var classes = guids.Select(g => (ClassName)g).ToArray();
If I had a method like
public static ClassName Convert(Guid value)
{
return new ClassName(value);
}
I could use the method group:
var guids = new[] { Guid.NewGuid, Guid.NewGuid() };
var classes = guids.Select(ClassName.Convert).ToArray();
Is there a way to just pass the method group for the explicit operator as well?
My naive experiments at correct syntax have failed:
guids.Select(ClassName) // no (obviously)
guids.Select(ClassName.ClassName) // no (obviously)
guids.Select((ClassName)) // no (obviously)
guids.Select(ClassName.op_explicit) // no (obviously)