2017-12-29 15 views
0

DateTime.Kindがget-onlyプロパティであるとすれば、DateTime.Parse()から生成されたDateTimeオブジェクトにDateTimeKindを割り当てるにはどうすればよいですか?C#DateTimeオブジェクトをDateTimeオブジェクトに適用する

var dte = DateTime.Parse("01/01/2018 10:10:00"); 

Console.WriteLine("{0} | Kind: {1}", dte, dte.Kind.ToString()); 

// PRINTS: 1/1/2018 10:10:00 AM | Kind: Unspecified 

dte = dte.ToLocalTime(); 

Console.WriteLine("{0} | Kind: {1}", dte, dte.Kind.ToString()); 

// PRINTS: 1/1/2018 6:10:00 PM | Kind: Local 
// OK, the "Kind" is changed to "Local" which is what I'm trying to achieve 
// however it also converted the time!!! 

私の質問はdte.ToUniversal()またはdte.ToLocalを()を使用せず、オブジェクトDTEにUTCまたはローカル「種類」を適用する方法であるため、両方の方法の変換(または変更)時間

+1

は 'DateTimeStyles.AssumeUniversalを渡して考えてみましょう| DateTimeStyles.AdjustToUniversal'(UTC時間)、またはローカルタイム用の 'DateTimeStyles.AssumeLocal'(これは、解析後ではなく、解析フェーズ中に行います)。 –

答えて

1

あなたは、解析された日時を使用することによって、あなたが欲しいDateTimeKindで新しいのDateTimeを作成することができ、およびDateTimeKindを取るコンストラクタ、次のようにする必要があります
msdn.microsoft.com/en-us/library/t882fzc6(v=vs.110).aspx

+0

私の質問が重複としてマークされた後、私はIvan Stoevが提供するリンクから答えを見つけました(あなたの答えとほぼ同じです)。ありがとうございました! – morethanyell

関連する問題