我一直在嘗試寫在正確的時區和格式生成日期時間字符串的擴展方法。我的代碼是:擴展方法調用其他擴展wethod
public static class DateTimeExtension
{
public static string ToZoneString(this DateTime date, string zoneId, string formatter)
{
TimeZoneInfo zone = TimeZoneInfo.FindSystemTimeZoneById(zoneId);
return TimeZoneInfo.ConvertTime(date, zone).ToString(formatter);
}
public static string ToZoneString(this DateTimeOffset date, string zoneId, string formatter)
{
//in this case all goes well
//TimeZoneInfo zone = TimeZoneInfo.FindSystemTimeZoneById(zoneId);
//return TimeZoneInfo.ConvertTime(date, zone).ToString(formatter);
//in this case an unexpected error occurs
return date.ToZoneString(zoneId, formatter);
}
}
但是在編譯和運行我的ASP.NET MVC項目後
「中的w3wp.exe發生未處理的Microsoft .NET框架例外」
已發生。爲什麼這樣?如果我不在第二個方法中調用第一個方法,並且所有方法都正確執行。
不會是'StackOverflowException'?我認爲你從* 2nd *方法調用* 2nd *方法;即使代碼看起來TimeZoneInfo.ConvertTime'的'一樣的,不同的重載使用 – ASh
如果它進入第二個方法,將沒有結束 – Uriil
您計算器上問一個問題,因爲你的程序變得計算器:) –