C# generic methods, type parameters in new() constructor constraint

Viewed 7828

Is there a way to create a Generic Method that uses the new() constraint to require classes with constructor attributes of specific types?

For Example:

I have the following code:

public T MyGenericMethod<T>(MyClass c) where T : class
{
    if (typeof(T).GetConstructor(new Type[] { typeof(MyClass) }) == null)
    {
        throw new ArgumentException("Invalid class supplied");
    }
    // ...
}

Is it possible to have something like this instead?

public T MyGenericMethod<T>(MyClass c) where T : new(MyClass)
{
    // ...
}

EDIT: There's a suggestion regarding this. Please vote so we can have this feature in C#!

EDIT 2: The site has been taken down. Now the suggestion is on Github. Follow up there!

3 Answers
Related