c
C# .Net : Tester un numérique rendu nullable.
voici la bonne pratique pour tester la valeur null d'un double par exemple.
Le type double par défaut n'est pas nullable. L'ajout d'un point d’interrogation juste après "double" permet de lui assigner une valeur nulle (ex : double? mondouble = null;).
Une des premières façon de procéder pourrait être de créer un if qui test le null comme suit.
if(mondouble != null){}
Le fait de faire ceci implique que l’opération va aller chercher dans la surcharge de double qui le rend nullable pour au final tester 'mondouble.HasValue' non disponible dans un double non nullable.
De ce fait i est fortement indiqué de passer directement par cette dernière méthode.
double? monDouble = null;
string reponse = (mondouble.HasValue) ? "Non null" : "null";
Bon code et bonne journée à vous =)
C# : Recuperer le numéro de la semaine en cours.
Bonjour, bienvenue dans ce tuto. Je vais vous expliquer comment récupérer le numéro de la semaine en langage C#. DateTime ne nous permettant pas de le récupérer directement, nous allons utiliser la fonction GetWeekOfYear de CultureInfo.CurrentCulture.Calendar comme suit :
int num_semaine = CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstFullWeek, DayOfWeek.Monday);
DateTime.Now : recupere la date du jour en cours.
DayOfWeek : Définit quel est le premier jour de la semaine.
CalendarWeekRule.FirstFullWeek : est la valeur qui définit une semaine. Trois possibilités :
FirstDay : La premiere semaine de l’année commence le premier jour de l’année et fini le dernier jour de la semaine en cours. Ex : si le 1er janvier est un jeudi et que vous avez mis DayOfWeek à lundi, la première semaine ira du jeudi 1er au dimanche 4 Janvier.
FirstFourDayWeek : La première semaine de l’année est la première semaine de l’année disposant d’au moins 4 jours avant le dernier jour de celle-ci. Ex :
Si ma première semaine commence un mardi et que j’ai mis comme premier jour de la semaine le lundi, j’ai bien plus de 4 jours du mardi 1er au dimanche 6 Janvier. Ce sera donc ma première semaine.
A l’inverse, si le 1er janvier est un vendredi, je n’ai que 3 jours entre le vendredi 1er et le dimanche 3 janvier. Ma première semaine sera donc du lundi 4 janvier au dimanche 10 janvier.
FirstFullWeek : Comme son nom l’indique, la première semaine de l’année est la première semaine pleine. Ex : Le 1er janvier est un mercredi, ce qui fait que si l’on met comme premier jour de la semaine un lundi, la première semaine sera celle du lundi 6 janvier au dimanche 12 janvier.
Merci d'avoir suivi cette astuce et bon code =)
C# TimeStamp : comment passer de timestamp à datetime (fuseau horaire compris).
Bonjour, aujourd'hui je vais vous présenter une des solutions pour obtenir une datetime à partir d'un timestamp unix.
Nous allons avoir un timestamp (long) : 1460379633 //qui représente le 11/4/2016 à 15:00:33
Pour prendre en compte le fuseau horaire, il faut déjà le définir (pour le fuseau Europe j'utilise l'id "E. Europe Standard Time"). Vous pouvez bien sur rechercher les différents ids disponibles. liste d'aide pour les timezoneids : ici
Voici le code :
Nous allons ensuite appeler une methode de conversion du timestamp :
Voici la methode à créer :
dateTime est alors égal à 11/4/2016 à 13:00:33. Le fuseau horaire n'ayant pas encore été pris en compte, il y à un décalage de deux heure dans mon cas.
Pour y remédier, nous allons utiliser la variable timeZoneInfo défini plus haut pour gérer le décalage du fuseau horaire.
dateTimeEurope vos alors 11/4/2016 à 15:00:33.
Cette méthode peut être améliorée avec notamment une détection automatique par code du fuseau horaire de la machine qui l'exécute.
A bientôt et bon code.