C#静态方法和控制台

时间:2011-06-27 14:36:34

标签: c# methods static console

嗨,我在一个类中有一个静态方法,在我的控制台应用程序中,我就像这样使用

Console.writeLine("Some thing Some thing");

Console.writeLine("Some thing Some thing");

String X=ClassName.Method(Para); <--- Check here


Console.writeLine("Some thing after some thing ");

Console.writeLine("Some thing after some thing ");

我的问题是在执行了静态方法代码之后,在获得statc方法的返回值之后没有得到执行的应用程序就像停止了......如何克服这个问题?

3 个答案:

答案 0 :(得分:4)

您的方法可能会抛出异常或阻止(不返回)。

要判断是否抛出异常,请在方法周围放置一个try / catch并打印出catch块中的任何异常。

try
{    
String X=ClassName.Method(Para); <--- Check here
}
catch (Exception e)
{
Console.WriteLine("{0}", e);
}

如果您的方法根本没有返回(例如,它可能在Console.ReadLine上被阻止),那么您需要在调试器中单步执行以查看原因。

此外,如果这是第一次访问“ClassName”类,则可能正在运行静态构造函数(“type constructor”)。有时候运行类型构造函数代码并不明显,但是如果你正在做一些可能会阻塞它的东西,这也可能是你的问题,而不仅仅是“方法”方法。

答案 1 :(得分:2)

暂停应用程序的问题在于ClassName.Method(Para)调用,如果该方法阻止了您的应用程序,您应该在那里进一步查看。

答案 2 :(得分:1)

尝试此操作以查找调用函数内是否发生任何错误:

Console.writeLine("Some thing Some thing");    
Console.writeLine("Some thing Some thing");    

try
{    
String X=ClassName.Method(Para); <--- Check here
}    

catch(Exception e)
{
Console.writeLine(e.Message);
}

Console.writeLine("Some thing after some thing ");    
Console.writeLine("Some thing after some thing ");