2016-08-02 18 views
0

Ich habe eine Zeichenfolge, die im Datumsformat Datum = 21.08.2016 Was ich tun möchte, ist die Anzahl der Tage ab dem heutigen Datum in C# habe ich die Zeichenfolge wie folgt umgewandelt .finde die Anzahl der Tage zwischen den Daten C#

DateTime Date = Convert.ToDayTime("08/21/2016"); 
DateTime TodayDate = DateTime.Today.Day;  
DateTime SubDate = Date.Subtract(TodayDate); 

In der dritten Zeile, ich bin nicht System.TimeSpan zu System.DateTime

konvertieren Fehler bekommen kann

Gibt es einen anderen Weg, dies zu tun, was ich berechne ich nur Zahlen von Tagen tun wollen von einem späteren Zeitpunkt, der als String

Example 
TodayDate=08/01/2016 
FutureDate=08/20/2016 

Answer 19 days 

ich bin neu in C# kommt, wenn es jemand Aktie Code Lösung könnte, wie dies zu erreichen, nicht zu viel Mühe ist? Danke für die Hilfe

+0

Antwort: https://stackoverflow.com/a/32240244/329367 – Darren

Antwort

5

Es gibt keine Methode Convert.ToDayTime in der Convert Klasse nannte es Convert.ToDateTime sein sollte.

Mit der DateTime können Sie ihr Objekt von einem anderen Objekt desselben Typs subtrahieren. Dann können Sie die .TotalDays Funktion verwenden, um die Anzahl der Tage zu erhalten. zwischen diesen Daten.

Verwendung so etwas wie dieses:

DateTime futurDate = Convert.ToDateTime("08/21/2016"); 
DateTime TodayDate = DateTime.Now; 
var numberOfDays = (futurDate - TodayDate).TotalDays; 
3
DateTime FutureDate = DateTime.ParseExact("08/21/2016", "mm/dd/yyyy", CultureInfo.InvariantCulture); 
DateTime TodayDate = DateTime.Now; 

int days = (FutureDate - TodayDate).Days;