Поделиться через


IL2073: Возвращаемое значение метода "target method" не соответствует требованиям DynamicallyAccessedMembersAttribute. Возвращаемое значение метода source method не снабжено соответствующими заметками. Исходное значение должно объявлять по меньшей мере такие же требования, которые были объявлены для назначенного ему целевого расположения.

Причина

В целевом расположении объявляются некоторые требования к значению типа с использованием его DynamicallyAccessedMembersAttribute. Кроме того, эти требования должны быть объявлены исходным значением с использованием DynamicallyAccessedMembersAttribute. При необходимости исходное значение может объявлять больше требований, чем целевой объект.

Пример

Type GetCustomType() { return typeof(CustomType); }

[return: DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors)]
Type TestMethod()
{
    // IL2073 Trim analysis: 'TestMethod' method return value does not satisfy 'DynamicallyAccessedMembersAttribute' requirements. The return value of method 'GetCustomType' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to.
    return GetCustomType();
}

Фиксации

Дополнительные сведения см. в разделе "Исправление предупреждений ".