Diagnose-IDs
Diagnose-IDs werden verwendet, um APIs oder Muster zu identifizieren, die Compilerwarnungen oder -fehler auslösen können. Dies kann über ObsoleteAttribute oder ExperimentalAttribute erfolgen. Diese können auf Consumerebene für jede Diagnose-ID unterdrückt werden.
Experimentelle APIs
OOXML0001
Titel: IPackage-bezogene APIs sind derzeit experimentell.
Ab v3.0 wurde zwischen System.IO.Packaging
und DocumentFormat.OpenXml.Packaging.OpenXmlPackage
eine neue Abstraktionsebene hinzugefügt. Dies ist derzeit experimentell, kann aber bei Bedarf verwendet werden. Dies wird in einem zukünftigen Release stabilisiert und erfordert möglicherweise keine Codeänderungen.
Unterdrücken von Warnungen
Es wird empfohlen, nach Möglichkeit eine verfügbare Problemumgehung zu verwenden. Wenn Sie Ihren Code jedoch nicht ändern können, können Sie Warnungen über eine #pragma
Direktive oder eine <NoWarn>
Projekteinstellung unterdrücken. Wenn Sie die veralteten oder experimentellen APIs verwenden müssen und die OOXMLXXXX
Diagnose nicht als Fehler angezeigt wird, können Sie die Warnung im Code oder in Ihrer Projektdatei unterdrücken.
So unterdrücken Sie die Warnungen im Code:
// Disable the warning.
#pragma warning disable OOXML0001
// Code that uses obsolete or experimental API.
//...
// Re-enable the warning.
#pragma warning restore OOXML0001
So unterdrücken Sie die Warnungen in einer Projektdatei:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<!-- NoWarn below suppresses SYSLIB0001 project-wide -->
<NoWarn>$(NoWarn);OOXML0001</NoWarn>
<!-- To suppress multiple warnings, you can use multiple NoWarn elements -->
<NoWarn>$(NoWarn);OOXML0001</NoWarn>
<NoWarn>$(NoWarn);OTHER_WARNING</NoWarn>
<!-- Alternatively, you can suppress multiple warnings by using a semicolon-delimited list -->
<NoWarn>$(NoWarn);OOXML0001;OTHER_WARNING</NoWarn>
</PropertyGroup>
</Project>
Hinweis
Wenn Sie Warnungen auf diese Weise unterdrücken, werden nur die von Ihnen angegebenen Veraltungswarnungen deaktiviert. Es werden keine anderen Warnungen deaktiviert, einschließlich Obsoletionswarnungen mit unterschiedlichen Diagnose-IDs.