2017-02-26 70 views
0

我有一个尝试块在我的方法之一。当引发异常时,我将它显示在标签上,但每次引发时,都会添加多行代码,因为我只想获取异常的第一行,而不显示“at System.String.CompareTo(Object值)在Example.Main()“。我如何才能获得第一条线?如何仅在显示异常时显示第一行?

+1

您可以分析出来的调用堆栈自己:' var message = ex.ToString(); var firstLine = message.Substring(0,message.IndexOf(Environment.NewLine));' – MarcinJuraszek

+0

您可以与我们分享您在代码块中填充标签的代码。这将有助于更好地了解您所面临的问题。 –

回答

1

你可以试试这个:

catch (Exception ex) 
     { 
      Console.WriteLine(ex.Message.ToString()); 
     } 

除非你需要在你的异常详细信息,您可以从以下属性中进行选择:

Console.WriteLine(ex.Source.ToString()); 
Console.WriteLine(ex.StackTrace.ToString()); 
Console.WriteLine(ex.TargetSite.ToString());