class Program
{
static void Main(string[] args)
{
Login loginObject = new Login();
int _loginTime = loginObject.login();
Booking bookingObject = new Booking();
bookingObject.booking(_loginTime);
new Thread(delegate()
{
bookingObject.booking(_loginTime);
}).Start();
Console.ReadLine();
}
}
class Booking
{
public void booking(int _loginTime)
{
DateTime _date;
int _route;
int _option;
string _pan;
try
{
Console.WriteLine("Enter Date of journey(dd/mm/yyyy)");
_date = Convert.ToDateTime(Console.ReadLine());
//Code here
}
catch (FormatException)
{
Console.WriteLine("Invalid date.");
}
}
}
如果我不使用线程,它工作正常。但是如果我使用线程会给出“无效日期”异常,即使输入的日期格式正确。 请提供解决方案。即使日期有效,在C#中使用线程概念后引发无效的日期异常
尝试使用DateTime.ParseExact与格式参数,而不是Convert.ToDateTime。您可能还想检查异常详细信息以了解异常的其他详细信息 – tdragon 2014-09-26 14:10:36
可能是在线程委托中的Console.ReadLine之前调用了main中的Console.Readline。你可以证明它添加了一些WriteLine来写输出和当前位置 – Steve 2014-09-26 14:25:34