variables“MyException”被声明,但从未使用过

我需要清除这个警告:

try { doSomething() } catch (AmbiguousMatchException MyException) { doSomethingElse() } 

编者告诉我:

variables“MyException”被声明,但从未使用过

我怎样才能解决这个问题。

  1. 你可以像这样删除它:

     try { doSomething() } catch (AmbiguousMatchException) { doSomethingElse() } 
  2. 使用警告禁用像这样:

     try { doSomething() } #pragma warning disable 0168 catch (AmbiguousMatchException exception) #pragma warning restore 0168 { doSomethingElse() } 

其他熟悉的警告禁用

 #pragma warning disable 0168 // variable declared but not used. #pragma warning disable 0219 // variable assigned but not used. #pragma warning disable 0414 // private field assigned but not used. 

你声明一个exception的名字,MyException,但是你从来不用做任何事情。 由于没有使用,编译器指出了它。

您可以简单地删除名称。

 catch(AmbiguousMatchException) { doSomethingElse(); } 

你可以简单地写:

 catch (AmbiguousMatchException) 

如果不在catch子句中使用它,则省略该exception名称。

麻烦的是,你没有在任何地方使用你的variablesMyException 。 它被声明,但没有被使用。 这不是一个问题,只是编译器给你一个提示,以防你打算使用它。

如果你有一个运行,你可以把exception写出来。 可能有助于追踪任何问题。

 Log.Write("AmbiguousMatchException: {0}", MyException.Message);