共用方式為


IL2026:具有 RequiresUnreferencedCode 屬性的成員在修剪時可能會中斷

原因

呼叫 (或透過反映存取) 標註 RequiresUnreferencedCodeAttribute 的成員。

例如:

[RequiresUnreferencedCode("Use 'MethodFriendlyToTrimming' instead", Url="http://help/unreferencedcode")]
void MethodWithUnreferencedCodeUsage()
{
}

void TestMethod()
{
    // IL2026: Using method 'MethodWithUnreferencedCodeUsage' which has 'RequiresUnreferencedCodeAttribute'
    // can break functionality when trimming application code. Use 'MethodFriendlyToTrimming' instead. http://help/unreferencedcode
    MethodWithUnreferencedCodeUsage();
}

檔案描述

RequiresUnreferencedCodeAttribute 表示修剪器可能移除的成員參考程式碼。

常見的範例包括:

  • Load(String) 標示為 RequiresUnreferencedCode,因為正在載入的組件可能會存取修剪掉的成員。 除了應用程式直接使用的成員外,修剪器會從架構中移除所有成員,因此在執行階段載入新的組件可能會嘗試存取遺漏的成員。

  • XmlSerializer 標示為 RequiresUnreferencedCode,因為 XmlSerializer 使用複雜反映來掃描輸入型別。 修剪器無法追蹤反映,因此輸入型別可轉移使用的成員可能會遭修剪。