在VB.NET中抑制过时的警告

时间:2009-05-13 12:43:46

标签: vb.net warnings obsolete

我在Visual Studio 2008中使用过时的方法使用VB.NET代码,并希望禁止警告。不幸的是,遵循这个建议不是一个好的解决方案,因为它需要使用不同的类,这在不同的方面有重要作用。

我正在尝试使用System.Diagnostics.CodeAnalysis.SuppressMessage来抑制警告,但我不知道写什么作为属性的参数,并且找不到任何相关的参考。

我还应该说,右键单击错误列表中的错误我没有任何“抑制消息”选项。

3 个答案:

答案 0 :(得分:18)

如果您使用的是Visual Studio,则可以执行以下操作。

  1. 右键单击项目并选择“卸载”
  2. 右键单击该项目,然后选择“Edit SomeProjectName.vbproj”
  3. 您应该看到两个名为“NoWarn”的XML元素标记。将数字40000添加到已存在的数字列表中(确保对文件中的每个NoWarn标记执行此操作)
  4. 保存文件
  5. 右键单击该项目并选择重新加载(您必须关闭.vbproj文件)
  6. 这将消除警告。数字40000是obselete警告的VB.Net错误号。您可以以这种方式禁止任何警告。

    注意:如果NoWarn标记不存在,请将其添加到具有以下值的主PropertyGroup元素

    <NoWarn>40000</NoWarn>
    

答案 1 :(得分:4)

在VS.NET中,您可以右键单击并禁止代码分析警告。这将为您添加属性。

但是,“不使用过时的API”警告不是来自代码分析,因此SurpressMessage属性不起作用。这是编译器警告。

对于VS.NET,您需要使用...

关闭此警告
/nowarn:0618

...在命令行中(或者只是将“0618”添加到csproj属性的Suppress Warnings字段中)。无论VB警告号是什么,你都应该这样做。

答案 2 :(得分:0)

我能够在我的VB项目中使用JaredPar的答案来解决这个问题,谢谢!

我确实对我的 C#测试项目发出了相同的警告,我通过在项目属性中的Build标签的抑制警告部分中添加 618 来删除该项目。

请记住VB和C#的错误代码不同。


如果要更正这些警告,则需要为Microsoft OracleClient开发人员安装和使用ODP.NET

Microsoft正在弃用System.Data.OracleClient,也称为Microsoft OracleClient。 Microsoft OracleClient提供程序开发人员可以利用此机会重新评估要用于当前和即将开展的项目的数据提供程序。 Oracle建议使用Oracle Data Provider for .NET(ODP.NET)开始构建新的Oracle .NET应用程序,并将现有应用程序迁移到ODP.NET。

http://www.oracle.com/technetwork/topics/dotnet/index-085703.html