Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ursache
Ein Aufruf von MethodInfo.MakeGenericMethod(Type[]) kann vom Trimmer nicht statisch analysiert werden.
Regelbeschreibung
Entweder kann die Methode, für die MakeGenericMethod(Type[]) aufgerufen wird, nicht statisch bestimmt werden, oder die Typparameter, die für generische Argumente verwendet werden sollen, können nicht statisch bestimmt werden. Wenn die offene generische Methode DynamicallyAccessedMembersAttribute-Anmerkungen zu einem seiner generischen Parameter aufweist, kann der Trimmer derzeit nicht überprüfen, ob die Anforderungen von der aufrufenden Methode erfüllt werden.
Beispiel
class Test
{
public static void TestGenericMethod<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicProperties)] T>()
{
}
void TestMethod(Type unknownType)
{
// IL2060 Trim analysis: Call to 'System.Reflection.MethodInfo.MakeGenericMethod' can not be statically analyzed. It's not possible to guarantee the availability of requirements of the generic method
typeof(Test).GetMethod("TestGenericMethod").MakeGenericMethod(new Type[] { typeof(TestType) });
// IL2060 Trim analysis: Call to 'System.Reflection.MethodInfo.MakeGenericMethod' can not be statically analyzed. It's not possible to guarantee the availability of requirements of the generic method
unknownMethod.MakeGenericMethod(new Type[] { typeof(TestType) });
}
}