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