C# Error CS0717 – ‘{0}’: static classes cannot be used as constraints

C# Error

CS0717 – ‘{0}’: static classes cannot be used as constraints

Reason for the Error & Solution

‘static class’: static classes cannot be used as constraints

Static classes cannot be extended as they only contain static members and not instance members. Because they cannot be extended, this makes them useless as type parameters and constraints, as no type can exist that is a specialization of a static class.

Example

The following sample generates CS0717:

// CS0717.cs  
  
public static class SC  
{  
    public static void F()  
    {  
    }  
}  
  
public class G<T> where T : SC  // CS0717  
{  
    public static void Main()  
    {  
    }  
}  

Leave A Reply

Your email address will not be published. Required fields are marked *

You May Also Like

C# Compiler Error CS0442 – ‘Property’: abstract properties cannot have private accessors Reason for the Error You’ll get this error...
This is a really simple one . Below is a simple example of an enum called “Designation” defined with the...
This blog post explain the usage of the Checked Block in .NET and how you can use them in Visual...