2016-04-30 4 views
-1

私はGoogle Calendar APIと対話GCalendarクラスをしました:TimeSpanでDateTimeを変換しますか?

public class GEvent 
{ 
    public DateTime StartDate { get; set; } 
    public TimeSpan StartTime { get; set; } 
    public DateTime EndDate { get; set; } 
    public TimeSpan EndTime { get; set; } 
} 

次の2つのプロパティStartTimeとの両方TimeSpanあるEndTimeがある見ることができますか。私は、カスタムコントロールからStartTimeEndTimeの値をとる

Calendar.GEvent eventD = new Calendar.GEvent(); 

は今、私はそうのように、このクラスをインスタンス化したオブジェクトを作成しました。このコントロールは TimeSpanの代わりに DateTimeを返しますので、 DateTimeTimeSpanに変換する必要があります。これは私がやったことです: EventTimeStartは、カスタムコントロールをある

eventD.StartTime = new TimeSpan((long)EventTimeStart.SelectedTime.Value); 

。今、そこにnew TimeSpanが長いのを待っている問題があるので、私は(long)に暗黙のキャストに制御値を試してみましたが、私は得る:

は、私はまた、「ロング」

にタイプSystem.DateTimeを変換できません。試してみました:

long startTime = EventTimeStart.SelectedTime.Value; 

でも同じです。これを修正するにはどうすればよいですか?

enter image description here

+0

「yourDateTime.TimeOfDay」。 TimeSpanはDateTimeの一部であるため、DateTimeをTimespanに変換することはできません。その車のように車に変換しようとしているような。 – C4u

+0

@ C4ud3x私は 'EventTimeStart.'に' TimeOfDay'を持っていません。 – Dillinger

+0

その後、 'EventTimeStart'はDateTimeではありません! – C4u

答えて

1

ここにある:

TimeSpan startTime = EventTimeStart.SelectedTime.Value.TimeOfDay;

のTimeSpanは、日時の一部であるとして、あなたは変換傾けます。しかし、.TimeOfDayでそれを手に入れることができます。

コメントのエラーによると:TimeSpanlongに保存しないでください。
long time = something.TimeOfDay; wont work。

関連する問題