Warum bekomme ich eine InvalidCastException
wenn Sie dies tun?
throw (ArgumentNullException)(new Exception("errormessage", null));
Dies ist eine vereinfachte Version der folgenden Funktion.
public static void Require<T>(bool assertion, string message, Exception innerException) where T: Exception
{
if (!assertion)
{
throw (T)(new Exception(message, innerException));
}
}
Die vollständige Fehlermeldung lautet:
System.InvalidCastException : Objekt vom Typ 'System.Exception' kann nicht in den Typ 'System.ArgumentNullException' gecastet werden.