编译器警告WFDEV005

引入的版本:.NET 10 预览版 1

Clipboard.GetData(string) 已过时。 请改用 Clipboard.TryGetData<T> 方法。

-或-

DataObject.GetData 方法已过时。 请改用相应的 DataObject.TryGetData<T>

-或-

ClipboardProxy.GetData(As String) 方法已过时。 请改用 ClipboardProxy.TryGetData(Of T)(As String, As T)

使用 Clipboard.GetData(String)DataObject.GetDataClipboardProxy.GetData(String)在编译时生成警告 WFDEV005。 这些方法依赖于 BinaryFormatter,该功能由于安全原因已被弃用。 有关详细信息,请参阅 BinaryFormatter 的 Windows 窗体迁移指南

解决方法

将对这些方法的引用替换为不使用 BinaryFormatter的方法。

原始方法 替换方法
Clipboard.GetData(String) Clipboard.TryGetData
DataObject.GetData DataObject.TryGetData
ClipboardProxy.GetData(String) ClipboardProxy.TryGetData

抑制警告

使用以下任一方法禁止显示警告:

  • .editorConfig 文件中设置规则的严重性。

    [*.{cs,vb}]
    dotnet_diagnostic.WFDEV005.severity = none
    

    有关编辑器配置文件的详细信息,请参阅 用于代码分析规则的配置文件。

  • 将以下 PropertyGroup 添加到项目文件:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFDEV005</NoWarn>
    </PropertyGroup>
    
  • 在代码中使用 #pragma warning disable WFDEV005 指令进行抑制。

有关详细信息,请参阅如何禁止显示代码分析警告