Próbuję utworzyć obiekt DateTime, ale wydaje mi się, że powoduje błąd.
int month = "1"
int year = "2017"
DateTime date = new DateTime(year, month, DateTime.Day);
Wydaje się, że nie lubi DateTime.Day. Mówi, że odwołanie do obiektu jest wymagane dla pola niestatycznego.
Jak mogę otrzymać dzisiejszy dzień (16) jako parametr? Potrzebuję też daty, aby mieć hh: mm: sss ... jak mogę to zrobić?
Dzięki za pomoc!
Odpowiedzi:
1 dla odpowiedzi № 1Posługiwać się
var day = DateTime.Now.Day;
na dzisiaj.
Możesz dodać hh: mm: sss do data obiekt również w konstruktorze:
DateTime date = new DateTime(year, month, DateTime.Now.Day, 10, 11, 12);
- 10 => godziny
- 11 => minuty
- 12 => sekundy
Oczywiście możesz użyć DateTime.Now.Hour itd. Dla bieżących wartości.
Na ArgumentOutOfRangeException jest wyrzucane, jeśli wartości nie są ważne dla prawdziwej daty, np. 30.2.xxxx.
Możesz wydrukować obiekt daty w różnych formatach, przeczytaj Dokumentacja MS dla wszystkich możliwości.
-1 dla odpowiedzi № 2
Powinno być:
int month = 1;
int year = 2017;
DateTime date = new DateTime(year, month, DateTime.Now.Day);
Zwróć uwagę, deklarujesz liczbę całkowitą bez quotation
znaki:
int month = 1;
Aby przekonwertować go na format 24-godzinny z milisekundami zgodnie z żądaniem komentarza:
string strResult = string.Format("{0:MM/dd/yyyy HH:mm:ss.fff}", date);
//Results: 02/17/2017 00:00:00.000
Przez 12 godzin:
string strResult = string.Format("{0:MM/dd/yyyy hh:mm:ss.fff}", date);
//Results: 02/17/2017 12:00:00.000